<?xml version="1.0"?>
<doc>
    <assembly>
        <name>NGenerics</name>
    </assembly>
    <members>
        <member name="T:NGenerics.Visitors.SumVisitor">
            <summary>
            A visitor that sums integers in any collection of type int.
            </summary>
        </member>
        <member name="T:NGenerics.Visitors.IVisitor`1">
            <summary>
            Provides an interface for visitors.
            </summary>
            <typeparam name="T">The type of objects to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.IVisitor`1.Visit(`0)">
            <summary>
            Visits the specified object.
            </summary>
            <param name="obj">The object to visit.</param>
        </member>
        <member name="P:NGenerics.Visitors.IVisitor`1.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
        </member>
        <member name="M:NGenerics.Visitors.SumVisitor.Visit(System.Int32)">
            <summary>
            Visits the specified object.
            </summary>
            <param name="obj">The object.</param>
        </member>
        <member name="P:NGenerics.Visitors.SumVisitor.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <returns><c>true</c> if this instance is done; otherwise, <c>false</c>.</returns>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.Visitors.SumVisitor.Sum">
            <summary>
            Gets the sum accumulated by this <see cref="T:NGenerics.Visitors.SumVisitor"/>.
            </summary>
            <value>The sum.</value>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.Vector3D">
            <summary>
            A Vector data structure.
            </summary>
            <summary>
            A Vector data structure.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.VectorBase`1">
            <summary>
            A Vector data structure.
            </summary>
            <summary>
            A Vector data structure.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.IVector`1">
            <summary>
            An interface describing a mathematical Vector.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.General.IVisitable`1">
            <summary>
            The IVisitable interface provides data structures a method of allowing a visitor
            to visit every object contained in the structure.
            </summary>
            <typeparam name="T">The type of elements to visit.</typeparam> 
        </member>
        <member name="M:NGenerics.DataStructures.General.IVisitable`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.AbsoluteMaximum">
            <summary>
            Get the value of the absolute maximum dimension.
            </summary>
            <returns>The value of the absolute maximum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.AbsoluteMaximumIndex">
            <summary>
            Get the index of the absolute minimum dimension.
            </summary>
            <returns>The index of the absolute minimum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.AbsoluteMinimum">
            <summary>
            Get the value of the absolute minimum dimension.
            </summary>
            <returns>The value of the absolute minimum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.AbsoluteMinimumIndex">
            <summary>
            Get the index of the absolute maximum dimension.
            </summary>
            <returns>The index of the absolute maximum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Add(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Add(`0)">
            <summary>
            Adds a <typeparamref name="T"/> to each dimension.
            </summary>
            <param name="number">The <typeparamref name="T"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Clear">
            <summary>
            Sets the value of each dimension to zero.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.CrossProduct(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.
            </summary>
            <remarks>
            Consider two vectors, a = (1,2,3) and b = (4,5,6). The cross product a × b is
            a × b = (1,2,3) × (4,5,6) = ((2 × 6 - 3 × 5),(3 × 4 - 1 × 6), (1 × 5 - 2 × 4)) = (-3,6,-3). 
            </remarks>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Decrement">
            <summary>
            Decrement each dimension by 1.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.DotProduct(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Calculate the dot product.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the dot product with.</param>
            <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Sum">
            <summary>
            Computes the sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Product">
            <summary>
            Computes the product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Increment">
            <summary>
            Increment each dimension by 1.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude">
            <summary>
            Gets the magnitude of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The magnitude of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Divide(`0)">
            <summary>
            Divide each dimension by a number.
            </summary>
            <param name="number">The <typeparamref name="T"/> to divide by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Divide(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Divide by a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to divide by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Negate">
            <summary>
            Negate each dimension.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Normalize">
            <summary>
            Normalize each dimension.
            </summary>
            <remarks>
            Results in the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> having a <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> of 1.
            </remarks>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Maximum">
            <summary>
            Get the value of the maximum dimension.
            </summary>
            <returns>The value of the maximum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.MaximumIndex">
            <summary>
            Get the index of the maximum dimension.
            </summary>
            <returns>The index of the maximum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Minimum">
            <summary>
            Get the value of the minimum dimension.
            </summary>
            <returns>The value of the minimum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.MinimumIndex">
            <summary>
            Get the index of the minimum dimension.
            </summary>
            <returns>The index of the minimum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Multiply(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Multiply(`0)">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with a <typeparamref name="T"/>.
            </summary>
            <param name="number">The <typeparamref name="T"/> to multiply by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Subtract(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Subtract(`0)">
            <summary>
            Subtracts a <typeparamref name="T"/> from the current instance.
            </summary>
            <param name="number">The <typeparamref name="T"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.SetValues(`0[])">
            <summary>
            Set the values of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>
            </summary>
            <param name="values">The values to set.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.Swap(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="other">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to swap values with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.ToArray">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <typeparamref name="T"/> array. 
            </summary>
            <returns>A <typeparamref name="T"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IVector`1.ToMatrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.IVector`1.Item(System.Int32)">
            <summary>
            Gets or sets the element in the specified dimension.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount">
            <summary>
            Gets the dimension count of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Equality(NGenerics.DataStructures.Mathematical.VectorBase{`0},NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Equals operator.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><c>true</c> is <paramref name="left"/> is equal to <paramref name="right"/>; otherwise <c>false</c>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Inequality(NGenerics.DataStructures.Mathematical.VectorBase{`0},NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Not Equals operator.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><c>true</c> is <paramref name="left"/> is not equal to <paramref name="right"/>; otherwise <c>false</c>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Division(NGenerics.DataStructures.Mathematical.VectorBase{`0},NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Overload of the operator /
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the division.</returns>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="left"/> does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="right"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Division(NGenerics.DataStructures.Mathematical.VectorBase{`0},`0)">
            <summary>
            Overload of the operator /
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the division.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Multiply(NGenerics.DataStructures.Mathematical.VectorBase{`0},NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the multiplication.</returns>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="right"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Multiply(NGenerics.DataStructures.Mathematical.VectorBase{`0},`0)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the multiplication.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Addition(NGenerics.DataStructures.Mathematical.VectorBase{`0},NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Overload of the operator + 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="right"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Increment(NGenerics.DataStructures.Mathematical.VectorBase{`0})">
            <summary>
            Overload of the operator ++
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="right"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Addition(NGenerics.DataStructures.Mathematical.VectorBase{`0},`0)">
            <summary>
            Overload of the operator + 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Subtraction(NGenerics.DataStructures.Mathematical.VectorBase{`0},NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the subtraction.</returns>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="right"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Subtraction(NGenerics.DataStructures.Mathematical.VectorBase{`0},`0)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the subtraction.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_UnaryNegation(NGenerics.DataStructures.Mathematical.VectorBase{`0})">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the negation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.op_Decrement(NGenerics.DataStructures.Mathematical.VectorBase{`0})">
            <summary>
            Overload of the operator --
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="right"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.#ctor(System.Int32)">
            <summary>
            Initialise a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/> class.
            </summary>
            <param name="dimensionCount">The number of dimensions.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="dimensionCount"/> is less than 0.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.AcceptSafe(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Add(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="vector"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.AddSafe(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Add(`0)">
            <summary>
            Adds a <typeparamref name="T"/> to each dimension.
            </summary>
            <param name="number">The <typeparamref name="T"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.CheckDimensionsEqual(NGenerics.DataStructures.Mathematical.IVector{`0},NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Check if the dimensions of two <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>s are equal.
            </summary>
            <param name="left">The left hand <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <param name="right">The right hand <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <exception cref="T:System.ArgumentException">The left <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> does not equal the right <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Clear">
            <summary>
            Sets the value of each dimension to zero.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.DeepClone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Clone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.CrossProduct(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.</returns>
            <exception cref="T:System.InvalidOperationException"><see cref="P:NGenerics.DataStructures.Mathematical.VectorBase`1.DimensionCount"/> of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> does not equal 3.</exception>
            <exception cref="T:System.ArgumentException"><see cref="P:NGenerics.DataStructures.Mathematical.VectorBase`1.DimensionCount"/> of this <paramref name="vector"/> does not equal 3.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.CrossProductSafe(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Increment">
            <summary>
            Increment each dimension by 1.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Magnitude">
            <summary>
            Gets the magnitude of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The magnitude of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Product">
            <summary>
            Computes the product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Sum">
            <summary>
            Computes the sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Decrement">
            <summary>
            Decrement each dimension by 1.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Divide(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Divide by a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to divide by.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="vector"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.DivideSafe(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Divide by a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to divide by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Divide(`0)">
            <summary>
            Divide each dimension by a <typeparamref name="T"/>.
            </summary>
            <param name="number">The<typeparamref name="T"/> to divide by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.DotProduct(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Calculate the dot product.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the dot product with.</param>
            <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="vector"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.DotProductSafe(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Calculate the dot product.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the dot product with.</param>
            <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Equals(System.Object)">
            <summary>
            Indicates whether this instance and a specified object are equal.
            </summary>
            <param name="obj">Another object to compare to.</param>
            <returns>
            true if obj and this instance are the same type and represent the same value; otherwise, false.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Equals(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Indicates whether this instance and a specified object are equal.
            </summary>
            <param name="other">Another object to compare to.</param>
            <returns>
            true if obj and this instance are the same type and represent the same value; otherwise, false.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.GetHashCode">
            <summary>
            Serves as a hash function for a particular type. <see cref="M:NGenerics.DataStructures.Mathematical.VectorBase`1.GetHashCode"/> is suitable for use in hashing algorithms and data structures like a hash table. 
            </summary>
            <returns>A hash code for the current <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.AbsoluteMaximum">
            <summary>
            Get the value of the absolute maximum dimension.
            </summary>
            <returns>The value of the absolute maximum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.AbsoluteMaximumIndex">
            <summary>
            Get the index of the absolute maximum dimension.
            </summary>
            <returns>The index of the absolute maximum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.AbsoluteMinimum">
            <summary>
            Get the value of the absolute minimum dimension.
            </summary>
            <returns>The value of the absolute minimum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.AbsoluteMinimumIndex">
            <summary>
            Get the index of the absolute minimum dimension.
            </summary>
            <returns>The index of the absolute minimum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Maximum">
            <summary>
            Get the value of the maximum dimension.
            </summary>
            <returns>The value of the maximum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.MaximumIndex">
            <summary>
            Get the index of the maximum dimension.
            </summary>
            <returns>The index of the maximum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Minimum">
            <summary>
            Get the value of the minimum dimension.
            </summary>
            <returns>The value of the minimum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.MinimumIndex">
            <summary>
            Get the index of the minimum dimension.
            </summary>
            <returns>The index of the minimum dimension.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Multiply(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="vector"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.MultiplySafe(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Multiply(`0)">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with a <typeparamref name="T"/>.
            </summary>
            <param name="number">The <typeparamref name="T"/> to multiply by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Negate">
            <summary>
            Negate each dimension.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Normalize">
            <summary>
            Normalize each dimension.
            </summary>
            <remarks>
            Results in the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> having a <see cref="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Magnitude"/> of 1.
            </remarks>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.SetValues(`0[])">
            <summary>
            Set the values of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>
            </summary>
            <param name="values">The values to set.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="values"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">The length of <paramref name="values"/> does not equal <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.SetValuesSafe(`0[])">
            <summary>
            Set the values of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>
            </summary>
            <remarks><paramref name="values"/> has already been checked for null and that it is of the correct length.</remarks>
            <param name="values">The values to set.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Subtract(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.SubtractSafe(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <returns>The result of the subtraction.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Subtract(`0)">
            <summary>
            Subtracts a <typeparamref name="T"/> from the current instance.
            </summary>
            <param name="number">The <typeparamref name="T"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <returns>The result of the subtraction.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.Swap(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="other">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to swap values with.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="other"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="other"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.SwapSafe(NGenerics.DataStructures.Mathematical.IVector{`0})">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <remarks><paramref name="other"/> has been checked for null and that its dimensions match the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</remarks>
            <param name="other">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to swap value with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.ToArray">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <typeparamref name="T"/> array. 
            </summary>
            <returns>A <typeparamref name="T"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.ToString">
            <summary>
            Returns a string representation of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>
            A string representation of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorBase`1.ToMatrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.VectorBase`1.DimensionCount">
            <summary>
            Gets the dimension count of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.VectorBase`1.Item(System.Int32)">
            <summary>
            Gets or sets the element in the specified dimension.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.#ctor">
            <summary>
            Initialise a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.#ctor(System.Double,System.Double,System.Double)">
            <summary>
            Initialise a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> class.
            </summary>
            <param name="x">The X dimension.</param>
            <param name="y">The Y dimension.</param>
            <param name="z">The Z dimension.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="ConstructorInitValues" lang="cs" title="The following example shows how to use the initialize values contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="ConstructorInitValues" lang="vbnet" title="The following example shows how to use the initialize values contructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.AbsoluteMaximum">
            <summary>
            Get the value of the absolute maximum dimension.
            </summary>
            <returns>The value of the absolute maximum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="AbsoluteMaximum" lang="cs" title="The following example shows how to use the AbsoluteMaximum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="AbsoluteMaximum" lang="vbnet" title="The following example shows how to use the AbsoluteMaximum method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.AbsoluteMaximumIndex">
            <summary>
            Get the index of the absolute maximum dimension.
            </summary>
            <returns>The index of the absolute maximum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="AbsoluteMaximumIndex" lang="cs" title="The following example shows how to use the AbsoluteMaximumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="AbsoluteMaximumIndex" lang="vbnet" title="The following example shows how to use the AbsoluteMaximumIndex method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.AbsoluteMinimum">
            <summary>
            Get the value of the absolute minimum dimension.
            </summary>
            <returns>The value of the absolute minimum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="AbsoluteMinimum" lang="cs" title="The following example shows how to use the AbsoluteMinimum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="AbsoluteMinimum" lang="vbnet" title="The following example shows how to use the AbsoluteMinimum method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.AbsoluteMinimumIndex">
            <summary>
            Get the index of the absolute minimum dimension.
            </summary>
            <returns>The index of the absolute minimum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="AbsoluteMinimumIndex" lang="cs" title="The following example shows how to use the AbsoluteMinimumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="AbsoluteMinimumIndex" lang="vbnet" title="The following example shows how to use the AbsoluteMinimumIndex method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.AcceptSafe(NGenerics.Visitors.IVisitor{System.Double})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Add(System.Double)">
            <summary>
            Adds a <see cref="T:System.Double"/> to each dimension.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="AddDouble" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="AddDouble" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Add(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="AddVector" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="AddVector" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.AddSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Clear">
            <summary>
            Sets the value of each dimension to zero.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.CloneInternal">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.CrossProduct(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> and <paramref name="vector"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="CrossProduct3D" lang="cs" title="The following example shows how to use the CrossProduct method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="CrossProduct3D" lang="vbnet" title="The following example shows how to use the CrossProduct method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.CrossProduct(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> and <paramref name="vector"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="CrossProduct3D" lang="cs" title="The following example shows how to use the CrossProduct method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="CrossProduct3D" lang="vbnet" title="The following example shows how to use the CrossProduct method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.CrossProductSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Decrement">
            <summary>
            Decrement each dimension by 1.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Decrement" lang="cs" title="The following example shows how to use the Decrement method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Decrement" lang="vbnet" title="The following example shows how to use the Decrement method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.DeepClone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Divide(System.Double)">
            <summary>
            Divide each dimension by a number.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to divide by.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="DivideDouble" lang="cs" title="The following example shows how to use the Divide method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="DivideDouble" lang="vbnet" title="The following example shows how to use the Divide method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Divide(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Divide each dimension by a number.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to divide by.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="DivideVector" lang="cs" title="The following example shows how to use the Divide method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="DivideVector" lang="vbnet" title="The following example shows how to use the Divide method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.DivideSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Divide by a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to divide by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.DotProduct(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Calculate the dot product.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to calculate the dot product with.</param>
            <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="DotProduct" lang="cs" title="The following example shows how to use the DotProduct method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="DotProduct" lang="vbnet" title="The following example shows how to use the DotProduct method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.DotProductSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Calculate the dot product.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the dot product with.</param>
            <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Increment">
            <summary>
            Increment each dimension by 1.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Increment" lang="cs" title="The following example shows how to use the Increment method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Increment" lang="vbnet" title="The following example shows how to use the Increment method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Magnitude">
            <summary>
            Gets the magnitude of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The magnitude of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Magnitude" lang="cs" title="The following example shows how to use the Increment method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Magnitude" lang="vbnet" title="The following example shows how to use the Increment method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Maximum">
            <summary>
            Get the value of the maximum dimension.
            </summary>
            <returns>The value of the maximum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Maximum" lang="cs" title="The following example shows how to use the Maximum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Maximum" lang="vbnet" title="The following example shows how to use the Maximum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.MaximumIndex">
            <summary>
            Get the index of the maximum dimension.
            </summary>
            <returns>The index of the maximum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="MinimumIndex" lang="cs" title="The following example shows how to use the MinimumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="MinimumIndex" lang="vbnet" title="The following example shows how to use the MinimumIndex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Minimum">
            <summary>
            Get the value of the minimum dimension.
            </summary>
            <returns>The value of the minimum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Minimum" lang="cs" title="The following example shows how to use the Minimum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Minimum" lang="vbnet" title="The following example shows how to use the Minimum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.MinimumIndex">
            <summary>
            Get the index of the minimum dimension.
            </summary>
            <returns>The index of the minimum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="MinimumIndex" lang="cs" title="The following example shows how to use the MinimumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="MinimumIndex" lang="vbnet" title="The following example shows how to use the MinimumIndex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Multiply(System.Double)">
            <summary>
            Multiply all dimensions of the current <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> by a <see cref="T:System.Double"/>.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to multiply by.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="MultiplyDouble" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="MultiplyDouble" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Multiply(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="MultiplyVector" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="MultiplyVector" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.MultiplySafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Negate">
            <summary>
            Negate each dimension.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Negate" lang="cs" title="The following example shows how to use the Negate method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Negate" lang="vbnet" title="The following example shows how to use the Negate method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Normalize">
            <summary>
            Normalize each dimension.
            </summary>
            <remarks>
            Results in the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> having a <see cref="M:NGenerics.DataStructures.Mathematical.Vector3D.Magnitude"/> of 1.
            </remarks>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Normalize" lang="cs" title="The following example shows how to use the Normalize method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Normalize" lang="vbnet" title="The following example shows how to use the Normalize method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Product">
            <summary>
            Computes the product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Product" lang="cs" title="The following example shows how to use the Product method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Product" lang="vbnet" title="The following example shows how to use the Product method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.SubtractSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.</param>
            <returns>The result of the subtraction.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Sum">
            <summary>
            Computes the sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Sum" lang="cs" title="The following example shows how to use the Sum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Sum" lang="vbnet" title="The following example shows how to use the Sum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.SetValuesSafe(System.Double[])">
            <summary>
            Set the values of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>
            </summary>
            <param name="values">The values to set.</param>
            <remarks><paramref name="values"/> has already been checked for null and that it is of the correct length.</remarks>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Subtract(System.Double)">
            <summary>
            Subtracts a <see cref="T:System.Double"/> from the current instance.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="SubtractDouble" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="SubtractDouble" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Subtract(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="SubtractVector" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="SubtractVector" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.Swap(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.
            </summary>
            <param name="other">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to swap values with.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="other"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Swap" lang="cs" title="The following example shows how to use the Swap method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Swap" lang="vbnet" title="The following example shows how to use the Swap method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.SwapSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="other">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to swap value with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.ToArray">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:System.Double"/> array. 
            </summary>
            <returns>A <see cref="T:System.Double"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="ToArray" lang="cs" title="The following example shows how to use the ToArray method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="ToArray" lang="vbnet" title="The following example shows how to use the ToArray method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.ToMatrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="ToMatrix" lang="cs" title="The following example shows how to use the ToMatrix method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="ToMatrix" lang="vbnet" title="The following example shows how to use the ToMatrix method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Division(NGenerics.DataStructures.Mathematical.Vector3D,System.Double)">
            <summary>
            Overload of the operator /
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the division.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorDivideDouble" lang="cs" title="The following example shows how to use the divide operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorDivideDouble" lang="vbnet" title="The following example shows how to use the divide operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Division(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Overload of the operator /
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the division.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorDivideVector" lang="cs" title="The following example shows how to use the divide operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorDivideVector" lang="vbnet" title="The following example shows how to use the divide operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Multiply(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the multiplication.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorMultiplyVector" lang="cs" title="The following example shows how to use the multiply operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorMultiplyVector" lang="vbnet" title="The following example shows how to use the multiply operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Multiply(NGenerics.DataStructures.Mathematical.Vector3D,System.Double)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the multiplication.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorMultiplyDouble" lang="cs" title="The following example shows how to use the multiply operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorMultiplyDouble" lang="vbnet" title="The following example shows how to use the multiply operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Addition(NGenerics.DataStructures.Mathematical.Vector3D,System.Double)">
            <summary>
            Overload of the operator + 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorPlusDouble" lang="cs" title="The following example shows how to use the plus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorPlusDouble" lang="vbnet" title="The following example shows how to use the plus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Addition(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Overload of the operator + 
            </summary>
            <param name="left">The left hand side</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorPlusVector" lang="cs" title="The following example shows how to use the plus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorPlusVector" lang="vbnet" title="The following example shows how to use the plus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Increment(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Overload of the operator ++
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorIncrement" lang="cs" title="The following example shows how to use the increment operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorIncrement" lang="vbnet" title="The following example shows how to use the increment operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Subtraction(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the subtraction.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorSubtractVector" lang="cs" title="The following example shows how to use the minus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorSubtractVector" lang="vbnet" title="The following example shows how to use the minus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Subtraction(NGenerics.DataStructures.Mathematical.Vector3D,System.Double)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the subtraction.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorSubtractDouble" lang="cs" title="The following example shows how to use the minus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorSubtractDouble" lang="vbnet" title="The following example shows how to use the minus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_UnaryNegation(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the negation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorNegate" lang="cs" title="The following example shows how to use the negate operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorNegate" lang="vbnet" title="The following example shows how to use the negate operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Decrement(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Overload of the operator --
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorIncrement" lang="cs" title="The following example shows how to use the decrement operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorIncrement" lang="vbnet" title="The following example shows how to use the decrement operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Implicit(NGenerics.DataStructures.Mathematical.Vector3D)~NGenerics.DataStructures.Mathematical.Matrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to convert.</param>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorToMatrix" lang="cs" title="The following example shows how to use the convert to matrix operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorToMatrix" lang="vbnet" title="The following example shows how to use the convert to matrix operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_Explicit(NGenerics.DataStructures.General.ObjectMatrix{System.Double})~NGenerics.DataStructures.Mathematical.Vector3D">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>. 
            </summary>
            <param name="matrix">The <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> to convert.</param>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.InvalidCastException"><paramref name="matrix"/> has more than 1 column.</exception>
            <exception cref="T:System.InvalidCastException"><paramref name="matrix"/> has more than 3 rows.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorFromMatrix" lang="cs" title="The following example shows how to use the convert from matrix operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorFromMatrix" lang="vbnet" title="The following example shows how to use the convert from matrix operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_GreaterThan(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> is greater than another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is greater than <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorGreaterThan" lang="cs" title="The following example shows how to use the &gt; operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorGreaterThan" lang="vbnet" title="The following example shows how to use the &gt; operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_LessThan(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> is less than another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is less than <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorLessThan" lang="cs" title="The following example shows how to use the &lt; operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorLessThan" lang="vbnet" title="The following example shows how to use the &lt; operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_GreaterThanOrEqual(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> is greater than or equal to another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is greater than or equal to <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorGreaterThanOrEqualTo" lang="cs" title="The following example shows how to use the &gt;= operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorGreaterThanOrEqualTo" lang="vbnet" title="The following example shows how to use the &gt;= operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector3D.op_LessThanOrEqual(NGenerics.DataStructures.Mathematical.Vector3D,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> is less than or equal to another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is less than or equal to <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.Operators.cs" region="OperatorLessThanOrEqualTo" lang="cs" title="The following example shows how to use the &lt;= operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.Operators.vb" region="OperatorLessThanOrEqualTo" lang="vbnet" title="The following example shows how to use the &lt;= operator."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector3D.Item(System.Int32)">
            <summary>
            Gets or sets the element in the specified dimension.
            </summary>
            <exception cref="T:System.IndexOutOfRangeException"><paramref name="index"/> is &gt; 2.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="Index" lang="cs" title="The following example shows how to use the index property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="Index" lang="vbnet" title="The following example shows how to use the index property."/>
            </example> 
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector3D.X">
            <summary>
            Gets or sets the x dimension
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="NamedDimensions" lang="cs" title="The following example shows how to use the X property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="NamedDimensions" lang="vbnet" title="The following example shows how to use the X property."/>
            </example> 
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector3D.Y">
            <summary>
            Gets or sets the y dimension
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="NamedDimensions" lang="cs" title="The following example shows how to use the Y property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="NamedDimensions" lang="vbnet" title="The following example shows how to use the Y property."/>
            </example> 
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector3D.Z">
            <summary>
            Gets or sets the z dimension
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="NamedDimensions" lang="cs" title="The following example shows how to use the Z property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="NamedDimensions" lang="vbnet" title="The following example shows how to use the Z property."/>
            </example> 
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector3D.ZeroVector">
            <summary>
            Creates zeroed <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.
            </summary>
            <returns>A zeroed <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="GetZeroVector" lang="cs" title="The following example shows how to use the ZeroVector property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="GetZeroVector" lang="vbnet" title="The following example shows how to use the ZeroVector property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector3D.UnitVector">
            <summary>
            Creates unit <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.
            </summary>
            <returns>A unit <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector3DExamples.cs" region="GetUnitVector" lang="cs" title="The following example shows how to use the ZeroVector property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector3DExamples.vb" region="GetUnitVector" lang="vbnet" title="The following example shows how to use the ZeroVector property."/>
            </example>
        </member>
        <member name="T:NGenerics.Sorting.HeapSorter`1">
            <summary>
            An sorter for the Heap Sort algorithm.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\HeapSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\HeapSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="T:NGenerics.Sorting.Sorter`1">
            <summary>
            The base class used for all Sorters in the library.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\SorterExamples.cs" region="SortList" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\SorterExamples.vb" region="SortList" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="T:NGenerics.Sorting.ISorter`1">
            <summary>
            An interface for a Sorter.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
        </member>
        <member name="M:NGenerics.Sorting.ISorter`1.Sort(System.Collections.Generic.IList{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list to sort.</param>
        </member>
        <member name="M:NGenerics.Sorting.ISorter`1.Sort(System.Collections.Generic.IList{`0},NGenerics.Sorting.SortOrder)">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list to sort.</param>
            <param name="order">The order in which to sort the list.</param>
        </member>
        <member name="M:NGenerics.Sorting.ISorter`1.Sort(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list to sort.</param>
            <param name="comparer">The comparer to use.</param>
        </member>
        <member name="M:NGenerics.Sorting.ISorter`1.Sort(System.Collections.Generic.IList{`0},System.Comparison{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list to sort.</param>
            <param name="comparison">The comparison to use.</param>
        </member>
        <member name="M:NGenerics.Sorting.Sorter`1.Sort(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\SorterExamples.cs" region="SortListComparer" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\SorterExamples.vb" region="SortListComparer" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.Sorter`1.Sort(System.Collections.Generic.IList{`0},System.Comparison{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparison">The comparison to use.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="list"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\SorterExamples.cs" region="SortListDelegate" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\SorterExamples.vb" region="SortListDelegate" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.Sorter`1.Sort(System.Collections.Generic.IList{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="list"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\SorterExamples.cs" region="SortList" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\SorterExamples.vb" region="SortList" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.Sorter`1.Sort(System.Collections.Generic.IList{`0},NGenerics.Sorting.SortOrder)">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="order">The order in which to sort the list.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="list"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\SorterExamples.cs" region="SortListOrder" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\SorterExamples.vb" region="SortListOrder" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.Sorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="M:NGenerics.Sorting.Sorter`1.Swap(System.Collections.Generic.IList{`0},System.Int32,System.Int32)">
            <summary>
            Swaps items in the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="pos1">The position of the first item.</param>
            <param name="pos2">The position of the last item.</param>
        </member>
        <member name="M:NGenerics.Sorting.HeapSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.Sorting.BucketSorter">
            <summary>
            A sorter that implements the Bucket Sort algorithm.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\BucketSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\BucketSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.BucketSorter.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Sorting.BucketSorter"/> class.
            </summary>
            <param name="maximumUniverse">The maximum universe.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\BubbleSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\BubbleSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.BucketSorter.SortItems(System.Collections.Generic.IList{System.Int32},System.Collections.Generic.IComparer{System.Int32})">
            <summary>
            Sorts the items.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="T:NGenerics.DataStructures.General.ReadOnlyPropertyList`2">
            <summary>
            A Wrapper around a IList which exposes a specific property via a read only list.
            </summary>
            <typeparam name="T">The type of elements in the property list.</typeparam>
            <typeparam name="TProperty">The type of properties in the property list.</typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.General.IVisitableCollection`1">
            <summary>
            The interface for a custom collection, extending the standard ICollection interface.
            </summary>
            <typeparam name="T">The type of elements in the visitable collection.</typeparam>
        </member>
        <member name="P:NGenerics.DataStructures.General.IVisitableCollection`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.General.IVisitableCollection`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value><c>true</c> if this collection is empty; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.DataStructures.General.IVisitableCollection`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.#ctor(System.Collections.Generic.IList{`0},System.ComponentModel.PropertyDescriptor)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.ReadOnlyPropertyList`2"/> class.
            </summary>
            <param name="list">The list to wrap.</param>
            <param name="property">The property on the type to use for conversion.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="list"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="property"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="property"/> is of the incorrect type.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.IndexOf(`1)">
            <summary>
            Determines the index of a specific item in the <see cref="T:System.Collections.Generic.IList`1"/>.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.IList`1"/>.</param>
            <returns>
            The index of item if found in the list; otherwise, -1.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="IndexOf" lang="cs" title="The following example shows how to use the IndexOf method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="IndexOf" lang="vbnet" title="The following example shows how to use the IndexOf method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.System#Collections#Generic#IList{TProperty}#Insert(System.Int32,`1)">
            <summary>
            Inserts an item to the <see cref="T:System.Collections.Generic.IList`1"/> at the specified index.
            </summary>
            <param name="index">The zero-based index at which item should be inserted.</param>
            <param name="item">The object to insert into the <see cref="T:System.Collections.Generic.IList`1"/>.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.System#Collections#Generic#IList{TProperty}#RemoveAt(System.Int32)">
            <summary>
            Removes the <see cref="T:System.Collections.Generic.IList`1"/> item at the specified index.
            </summary>
            <param name="index">The zero-based index of the item to remove.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.System#Collections#Generic#ICollection{TProperty}#Add(`1)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.System#Collections#Generic#ICollection{TProperty}#Clear">
            <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.Contains(`1)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.CopyTo(`1[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.System#Collections#Generic#ICollection{TProperty}#Remove(`1)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.Accept(NGenerics.Visitors.IVisitor{`1})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.System#Collections#Generic#IList{TProperty}#Item(System.Int32)">
            <summary>
            Gets or sets the item at the specified index.
            </summary>
            <exception cref="T:System.NotSupportedException">When the set is called.</exception>
        </member>
        <member name="P:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
            </summary>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ReadOnlyPropertyList`2.Item(System.Int32)">
            <summary>
            Gets the item at the specified index.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ReadOnlyPropertyListExamples.cs" region="Indexer" lang="cs" title="The following example shows how to use the indexer."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ReadOnlyPropertyListExamples.vb" region="Indexer" lang="vbnet" title="The following example shows how to use the indexer."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.Queues.IQueue`1">
            <summary>
            A queue interface.
            </summary>
            <typeparam name="T">The type of the elements in the queue.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.IQueue`1.Enqueue(`0)">
            <summary>
            Enqueues the item at the back of the queue.
            </summary>
            <param name="item">The item.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.IQueue`1.Dequeue">
            <summary>
            Dequeues the item at the front of the queue.
            </summary>
            <returns>The item at the front of the queue.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.IQueue`1.Peek">
            <summary>
            Peeks at the item in the front of the queue, without removing it.
            </summary>
            <returns>The item at the front of the queue.</returns>
        </member>
        <member name="T:NGenerics.DataStructures.Queues.IDeque`1">
            <summary>
            An interface for a deque
            </summary>
            <typeparam name="T">The type of the elements in the deque.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.IDeque`1.DequeueHead">
            <summary>
            Dequeues the head.
            </summary>
            <returns>The head of the deque.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.IDeque`1.DequeueTail">
            <summary>
            Dequeues the tail.
            </summary>
            <returns>The tail of the deque.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.IDeque`1.EnqueueHead(`0)">
            <summary>
            Enqueues the head.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.IDeque`1.EnqueueTail(`0)">
            <summary>
            Enqueues the tail.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.IDeque`1.Head">
            <summary>
            Gets the head.
            </summary>
            <value>The head.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.IDeque`1.Tail">
            <summary>
            Gets the tail.
            </summary>
            <value>The tail.</value>
        </member>
        <member name="T:NGenerics.Visitors.TrackingVisitor`1">
            <summary>
            A visitor that tracks (stores) objects in the order they were visited.
            Handy for demonstrating and testing different ordered visits implementations on
            data structures.
            </summary>
            <typeparam name="T">The type of objects to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.TrackingVisitor`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.TrackingVisitor`1"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.Visitors.TrackingVisitor`1.Visit(`0)">
            <summary>
            Visits the specified object.
            </summary>
            <param name="obj">The object.</param>
        </member>
        <member name="P:NGenerics.Visitors.TrackingVisitor`1.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <returns><c>true</c> if this instance is done; otherwise, <c>false</c>.</returns>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.Visitors.TrackingVisitor`1.TrackingList">
            <summary>
            Gets the tracking list.
            </summary>
            <value>The tracking list.</value>        
        </member>
        <member name="T:NGenerics.DataStructures.General.HeapType">
            <summary>
            The type of <see cref="T:NGenerics.DataStructures.General.Heap`1"/> to implemented.
            </summary>
        </member>
        <member name="F:NGenerics.DataStructures.General.HeapType.Minimum">
            <summary>
            Makes the heap a Minimum-Heap - the smallest item is kept in the root of the <see cref="T:NGenerics.DataStructures.General.Heap`1"/>.
            </summary>
        </member>
        <member name="F:NGenerics.DataStructures.General.HeapType.Maximum">
            <summary>
            Makes the heap a Maximum-Heap - the largest item is kept in the root of the <see cref="T:NGenerics.DataStructures.General.Heap`1"/>.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.General.PascalSet">
            <summary>
            A data structure for representing a set of objects and common operations performed on sets.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.General.ISet">
            <summary>
            An interface for the Set data structure
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.Subtract(NGenerics.DataStructures.General.ISet)">
            <summary>
            Applies the difference operation to two <see cref="T:NGenerics.DataStructures.General.ISet"/>.
            </summary>
            <param name="set">The other <see cref="T:NGenerics.DataStructures.General.ISet"/>.</param>
            <returns>The result of the difference operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.Intersection(NGenerics.DataStructures.General.ISet)">
            <summary>
            Applies the Intersection operation to two <see cref="T:NGenerics.DataStructures.General.ISet"/>s.
            </summary>
            <param name="set">The other <see cref="T:NGenerics.DataStructures.General.ISet"/>.</param>
            <returns>The result of the intersection operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.Inverse">
            <summary>
            Inverses this instance.
            </summary>
            <returns>The Inverse representation of the current <see cref="T:NGenerics.DataStructures.General.ISet"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.IsProperSubsetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a proper subset specified <see cref="T:NGenerics.DataStructures.General.ISet"/>.
            </summary>
            <param name="set">The <see cref="T:NGenerics.DataStructures.General.ISet"/>.</param>
            <returns>
            	<c>true</c> if [is proper subset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.IsProperSupersetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a proper superset of specified <see cref="T:NGenerics.DataStructures.General.ISet"/>.
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is proper superset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.IsSubsetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a subset of the specified <see cref="T:NGenerics.DataStructures.General.ISet"/>.
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is subset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.IsSupersetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a superset of the specified <see cref="T:NGenerics.DataStructures.General.ISet"/>.
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is superset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ISet.Union(NGenerics.DataStructures.General.ISet)">
            <summary>
            Performs the union operation on two <see cref="T:NGenerics.DataStructures.General.ISet"/>s.
            </summary>
            <param name="set">The set.</param>
            <returns>The union of this <see cref="T:NGenerics.DataStructures.General.ISet"/> and <paramref name="set"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.PascalSet"/> class.
            </summary>
            <param name="upperBound">The upper bound.  The lower bound defaults as 0.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.#ctor(System.Int32,System.Int32[])">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.PascalSet"/> class.
            </summary>
            <param name="upperBound">The upper bound.  The lower bound defaults as 0.</param>
            <param name="initialValues">The initial values.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.#ctor(System.Int32,System.Int32,System.Int32[])">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.PascalSet"/> class.
            </summary>
            <param name="lowerBound">The lower bound.</param>
            <param name="upperBound">The upper bound.</param>
            <param name="initialValues">The initial values.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="initialValues"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.PascalSet"/> class.
            </summary>
            <param name="lowerBound">The lower bound.</param>
            <param name="upperBound">The upper bound.</param>
            <exception cref="T:System.ArgumentException"><paramref name="lowerBound"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="upperBound"/> is not greater than <paramref name="lowerBound"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.#ctor(System.Collections.BitArray,System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.PascalSet"/> class.
            </summary>
            <param name="initialData">The initial data.</param>
            <param name="lowerBound">The lower bound.</param>
            <param name="upperBound">The upper bound.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Union(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Computes the union of this set and the specified set.
            </summary>
            <param name="set">The set.</param>
            <returns>The union between this set and the set specified.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Union" lang="cs" title="The following example shows how to use the Union method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Union" lang="vbnet" title="The following example shows how to use the Union method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Subtract(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Computes the difference between this set and the specified set.
            </summary>
            <param name="set">The set.</param>
            <returns>The result of the difference operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Subtract" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Subtract" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Intersection(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Computes the intersection between this set and the specified set.
            </summary>
            <param name="set">The set.</param>
            <returns>The result of the intersection operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Intersection" lang="cs" title="The following example shows how to use the Intersection method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Intersection" lang="vbnet" title="The following example shows how to use the Intersection method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Inverse">
            <summary>
            Returns a set with items not in this set.
            </summary>		
            <returns>The set with items not included in this set.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Inverse" lang="cs" title="The following example shows how to use the Inverse method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Inverse" lang="vbnet" title="The following example shows how to use the Inverse method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.IsSubsetOf(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Determines whether this set is a subset of the specified set.
            </summary>
            <param name="set">The set to be compared against.</param>
            <returns>
            	<c>true</c> if this set is a subset of the specified set]; otherwise, <c>false</c>.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="IsSubsetOf" lang="cs" title="The following example shows how to use the IsSubsetOf method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="IsSubsetOf" lang="vbnet" title="The following example shows how to use the IsSubsetOf method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.IsProperSubsetOf(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Determines whether this set is a proper subset of the specified set.
            </summary>
            <param name="set">The set to be compared against.</param>
            <returns>
            	<c>true</c> if this is a proper subset of the specified set; otherwise, <c>false</c>.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="IsProperSubsetOf" lang="cs" title="The following example shows how to use the IsProperSubsetOf method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="IsProperSubsetOf" lang="vbnet" title="The following example shows how to use the IsProperSubsetOf method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.IsSupersetOf(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Determines whether this set is a superset of the specified set.
            </summary>
            <param name="set">The set to be compared against.</param>
            <returns>
            	<c>true</c> if this set is a superset of the specified set; otherwise, <c>false</c>.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.IsProperSupersetOf(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Determines whether this set is a proper superset of the specified set.
            </summary>
            <param name="set">The set to be compared against.</param>
            <returns>
            	<c>true</c> if this is a proper superset of the specified set; otherwise, <c>false</c>.
            </returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="IsProperSupersetOf" lang="cs" title="The following example shows how to use the IsProperSupersetOf method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="IsProperSupersetOf" lang="vbnet" title="The following example shows how to use the IsProperSupersetOf method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_Addition(NGenerics.DataStructures.General.PascalSet,NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator + : Performs a union between two sets.
            </summary>
            <param name="s1">The left hand set.</param>
            <param name="s2">The right hand set.</param>
            <returns>The result of the union operation.</returns>    
            <exception cref="T:System.ArgumentNullException"><paramref name="s1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>  
            <exception cref="T:System.ArgumentNullException"><paramref name="s2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>  
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_Subtraction(NGenerics.DataStructures.General.PascalSet,NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator - : Performs a difference operation between two sets.
            </summary>
            <param name="s1">The left hand set.</param>
            <param name="s2">The right hand set.</param>
            <returns>The result of the difference operation.</returns>  
            <exception cref="T:System.ArgumentNullException"><paramref name="s1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="s2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>      
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_Multiply(NGenerics.DataStructures.General.PascalSet,NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator * : Performs a intersection between two sets.
            </summary>
            <param name="s1">The left hand set.</param>
            <param name="s2">The right hand set.</param>
            <returns>The result of the intersection operation.</returns> 
            <exception cref="T:System.ArgumentNullException"><paramref name="s1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="s2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_LessThanOrEqual(NGenerics.DataStructures.General.PascalSet,NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator &lt;= : Checks if the left hand set is a subset of the right hand set.
            </summary>
            <param name="s1">The left hand set.</param>
            <param name="s2">The right hand set.</param>
            <returns>A value indicating whether the left hand set is a subset of the right hand set.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="s1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="s2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_GreaterThanOrEqual(NGenerics.DataStructures.General.PascalSet,NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator &gt;= : Checks if the left hand set is a superset of the right hand set.
            </summary>
            <param name="s1">The left hand set.</param>
            <param name="s2">The right hand set.</param>
            <returns>A value indicating whether the left hand set is a superset of the right hand set.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="s1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="s2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_LessThan(NGenerics.DataStructures.General.PascalSet,NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator &lt;= : Checks if the left hand set is a proper subset of the right hand set.
            </summary>
            <param name="s1">The left hand set.</param>
            <param name="s2">The right hand set.</param>
            <returns>A value indicating whether the left hand set is a proper subset of the right hand set.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="s1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="s2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_GreaterThan(NGenerics.DataStructures.General.PascalSet,NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator &gt;= : Checks if the left hand set is a proper superset of the right hand set.
            </summary>
            <param name="s1">The left hand set.</param>
            <param name="s2">The right hand set.</param>
            <returns>A value indicating whether the left hand set is a proper superset of the right hand set.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="s1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="s2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.op_LogicalNot(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Operator ! : Performs the inverse operation on this set.
            </summary>
            <param name="set">The inverse of set.</param>
            <returns>The result of the inverse operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="set"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.GetOffSet(System.Int32)">
            <summary>
            Gets the offset of the specified index.
            </summary>
            <param name="item">The item.</param>
            <returns>The offset of the item at the specified index.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.IsUniverseTheSame(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Determines whether [is universe the same] [the specified set].
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is universe the same] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.CheckIfUniverseTheSame(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Checks if the universe is the same.
            </summary>
            <param name="set">The set.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.IsIndexValid(System.Int32)">
            <summary>
            Determines whether [is index valid] [the specified index].
            </summary>
            <param name="index">The index.</param>
            <returns>
            	<c>true</c> if [is index valid] [the specified index]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.CheckValidIndex(System.Int32)">
            <summary>
            Checks if the value supplied is a valid index.
            </summary>
            <param name="index">The index.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Add(System.Int32)">
            <summary>
            Adds the specified item.
            </summary>
            <param name="item">The item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Remove(System.Int32)">
            <summary>
            Removes the specified item.
            </summary>
            <param name="item">The item.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Remove" lang="cs" title="The following example shows how to use the Remove method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Remove" lang="vbnet" title="The following example shows how to use the Remove method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Contains(System.Int32)">
            <summary>
            Determines whether [contains] [the specified item].
            </summary>
            <param name="item">The item.</param>
            <returns>
            	<c>true</c> if [contains] [the specified item]; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.CopyTo(System.Int32[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Accept(NGenerics.Visitors.IVisitor{System.Int32})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>An enumerator for enumerating though the collection.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#Subtract(NGenerics.DataStructures.General.ISet)">
            <summary>
            Applies the difference operation to two sets.
            </summary>
            <param name="set">The other set.</param>
            <returns>The result of the difference operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#Intersection(NGenerics.DataStructures.General.ISet)">
            <summary>
            Applies the Intersection operation to two sets.
            </summary>
            <param name="set">The other set.</param>
            <returns>
            The result of the intersection operation.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#Inverse">
            <summary>
            Inverses this instance.
            </summary>
            <returns>
            The Inverse representation of the current set.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#IsProperSubsetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a proper subset specified set.
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is proper subset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#IsProperSupersetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a proper superset of specified set.
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is proper superset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#IsSubsetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a subset of the specified set.
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is subset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#IsSupersetOf(NGenerics.DataStructures.General.ISet)">
            <summary>
            Determines whether the current instance is a superset of the specified set.
            </summary>
            <param name="set">The set.</param>
            <returns>
            	<c>true</c> if [is superset of] [the specified set]; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.NGenerics#DataStructures#General#ISet#Union(NGenerics.DataStructures.General.ISet)">
            <summary>
            Performs the union operation on two sets.
            </summary>
            <param name="set">The set.</param>
            <returns>
            The union of this set and the set specified.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.PascalSet.Equals(NGenerics.DataStructures.General.PascalSet)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <param name="other">An object to compare with this object.</param>
            <returns>
            true if the current object is equal to the other parameter; otherwise, false.
            </returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.LowerBound">
            <summary>
            Gets the lower bound.
            </summary>
            <value>The lower bound.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="LowerBound" lang="cs" title="The following example shows how to use the LowerBound property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="LowerBound" lang="vbnet" title="The following example shows how to use the LowerBound property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.UpperBound">
            <summary>
            Gets the upper bound.
            </summary>
            <value>The upper bound.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="UpperBound" lang="cs" title="The following example shows how to use the UpperBound property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="UpperBound" lang="vbnet" title="The following example shows how to use the UpperBound property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.Capacity">
            <summary>
            Gets the capacity of the set (the amount of items that can be contained).
            </summary>
            <value>The capacity of the set.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Capacity" lang="cs" title="The following example shows how to use the Capacity property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Capacity" lang="vbnet" title="The following example shows how to use the Capacity property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.Item(System.Int32)">
            <summary>
            Indicates whether an item is present in this set.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.PascalSet.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\PascalSetExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\PascalSetExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.Vector2D">
            <summary>
            A Vector data structure.
            </summary>
            <summary>
            A Vector data structure.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Division(NGenerics.DataStructures.Mathematical.Vector2D,System.Double)">
            <summary>
            Overload of the operator /
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the division.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorDivideDouble" lang="cs" title="The following example shows how to use the divide operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorDivideDouble" lang="vbnet" title="The following example shows how to use the divide operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Division(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Overload of the operator / 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the multiplication.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorDivideVector" lang="cs" title="The following example shows how to use the divide operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorDivideVector" lang="vbnet" title="The following example shows how to use the divide operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Multiply(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the multiplication.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorMultiplyVector" lang="cs" title="The following example shows how to use the multiply operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorMultiplyVector" lang="vbnet" title="The following example shows how to use the multiply operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Multiply(NGenerics.DataStructures.Mathematical.Vector2D,System.Double)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="left">The left hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <param name="right">The right hand side.</param>
            <returns>The result of the multiplication.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorMultiplyDouble" lang="cs" title="The following example shows how to use the multiply operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorMultiplyDouble" lang="vbnet" title="The following example shows how to use the multiply operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Addition(NGenerics.DataStructures.Mathematical.Vector2D,System.Double)">
            <summary>
            Overload of the operator + 
            </summary>
            <param name="left">The left hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <param name="right">The right hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorPlusDouble" lang="cs" title="The following example shows how to use the plus."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorPlusDouble" lang="vbnet" title="The following example shows how to use the plus."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Addition(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Overload of the operator + 
            </summary>
            <param name="left">The left hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <param name="right">The right hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorPlusVector" lang="cs" title="The following example shows how to use the plus."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorPlusVector" lang="vbnet" title="The following example shows how to use the plus."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Increment(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Overload of the operator ++
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorIncrement" lang="cs" title="The following example shows how to use the increment."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorIncrement" lang="vbnet" title="The following example shows how to use the increment."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Subtraction(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="left">The left hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <param name="right">The right hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <returns>The result of the subtraction.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>        
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorSubtractVector" lang="cs" title="The following example shows how to use the minus."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorSubtractVector" lang="vbnet" title="The following example shows how to use the minus."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Subtraction(NGenerics.DataStructures.Mathematical.Vector2D,System.Double)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="left">The left hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <param name="right">The right hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <returns>The result of the subtraction.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorSubtractDouble" lang="cs" title="The following example shows how to use the minus."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorSubtractDouble" lang="vbnet" title="The following example shows how to use the minus."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_UnaryNegation(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="right">The right hand <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <returns>The result of the negation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorNegate" lang="cs" title="The following example shows how to use the negate."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorNegate" lang="vbnet" title="The following example shows how to use the negate."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Decrement(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Overload of the operator --
            </summary>
            <param name="right">The right hand side.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorIncrement" lang="cs" title="The following example shows how to use the decrement."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorIncrement" lang="vbnet" title="The following example shows how to use the decrement."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Implicit(NGenerics.DataStructures.Mathematical.Vector2D)~NGenerics.DataStructures.Mathematical.Matrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to convert.</param>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorToMatrix" lang="cs" title="The following example shows how to use the convert to matrix."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorToMatrix" lang="vbnet" title="The following example shows how to use the convert to matrix."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_Explicit(NGenerics.DataStructures.General.ObjectMatrix{System.Double})~NGenerics.DataStructures.Mathematical.Vector2D">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>. 
            </summary>
            <param name="matrix">The <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> to convert.</param>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.InvalidCastException"><paramref name="matrix"/> has more than 1 column.</exception>
            <exception cref="T:System.InvalidCastException"><paramref name="matrix"/> has more than 2 rows.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorFromMatrix" lang="cs" title="The following example shows how to use the convert from matrix."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorFromMatrix" lang="vbnet" title="The following example shows how to use the convert from matrix."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_GreaterThan(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> is greater than another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is greater than <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorGreaterThan" lang="cs" title="The following example shows how to use the &gt; operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorGreaterThan" lang="vbnet" title="The following example shows how to use the &gt; operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_LessThan(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> is less than another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is less than <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorLessThan" lang="cs" title="The following example shows how to use the &lt; operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorLessThan" lang="vbnet" title="The following example shows how to use the &lt; operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_GreaterThanOrEqual(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> is greater than or equal to another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is greater than or equal to <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorGreaterThanOrEqualTo" lang="cs" title="The following example shows how to use the &gt;= operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorGreaterThanOrEqualTo" lang="vbnet" title="The following example shows how to use the &gt;= operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.op_LessThanOrEqual(NGenerics.DataStructures.Mathematical.Vector2D,NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> is less than or equal to another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is less than or equal to <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.Operators.cs" region="OperatorLessThanOrEqualTo" lang="cs" title="The following example shows how to use the &lt;= operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.Operators.vb" region="OperatorLessThanOrEqualTo" lang="vbnet" title="The following example shows how to use the &lt;= operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.#ctor">
            <summary>
            Initialise a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.#ctor(System.Double,System.Double)">
            <summary>
            Initialise a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> class.
            </summary>
            <param name="x">The X dimension.</param>
            <param name="y">The Y dimension.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="ConstructorInitValues" lang="cs" title="The following example shows how to use the initialize values contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="ConstructorInitValues" lang="vbnet" title="The following example shows how to use the initialize values contructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.AbsoluteMaximum">
            <summary>
            Get the value of the absolute maximum dimension.
            </summary>
            <returns>The value of the absolute maximum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="AbsoluteMaximum" lang="cs" title="The following example shows how to use the AbsoluteMaximum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="AbsoluteMaximum" lang="vbnet" title="The following example shows how to use the AbsoluteMaximum method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.AbsoluteMaximumIndex">
            <summary>
            Get the index of the absolute maximum dimension.
            </summary>
            <returns>The index of the absolute maximum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="AbsoluteMaximumIndex" lang="cs" title="The following example shows how to use the AbsoluteMaximumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="AbsoluteMaximumIndex" lang="vbnet" title="The following example shows how to use the AbsoluteMaximumIndex method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.AbsoluteMinimum">
            <summary>
            Get the value of the absolute minimum dimension.
            </summary>
            <returns>The value of the absolute minimum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="AbsoluteMinimum" lang="cs" title="The following example shows how to use the AbsoluteMinimum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="AbsoluteMinimum" lang="vbnet" title="The following example shows how to use the AbsoluteMinimum method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.AbsoluteMinimumIndex">
            <summary>
            Get the index of the absolute minimum dimension.
            </summary>
            <returns>The index of the absolute minimum dimension</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.AcceptSafe(NGenerics.Visitors.IVisitor{System.Double})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Add(System.Double)">
            <summary>
            Adds a <see cref="T:System.Double"/> to each dimension.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="AddDouble" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="AddDouble" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Add(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="AddVector" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="AddVector" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.AddSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Clear">
            <summary>
            Sets the value of each dimension to zero.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.CloneInternal">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.CrossProduct(NGenerics.DataStructures.Mathematical.Vector3D)">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector3D"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> and <paramref name="vector"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="CrossProduct3D" lang="cs" title="The following example shows how to use the CrossProduct method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="CrossProduct3D" lang="vbnet" title="The following example shows how to use the CrossProduct method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.CrossProduct(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> and <paramref name="vector"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="CrossProduct2D" lang="cs" title="The following example shows how to use the CrossProduct method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="CrossProduct2D" lang="vbnet" title="The following example shows how to use the CrossProduct method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.CrossProductSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.DeepClone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Decrement">
            <summary>
            Decrement each dimension by 1.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Decrement" lang="cs" title="The following example shows how to use the Decrement method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Decrement" lang="vbnet" title="The following example shows how to use the Decrement method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Divide(System.Double)">
            <summary>
            Divide each dimension by a number.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to divide by.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="DivideDouble" lang="cs" title="The following example shows how to use the Divide method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="DivideDouble" lang="vbnet" title="The following example shows how to use the Divide method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Divide(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Divide each dimension by a number.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to divide by.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="DivideVector" lang="cs" title="The following example shows how to use the Divide method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="DivideVector" lang="vbnet" title="The following example shows how to use the Divide method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.DivideSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Divide by a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to divide by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.DotProduct(NGenerics.DataStructures.Mathematical.Vector2D)">
             <summary>
             Calculate the dot product.
             </summary>
             <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the dot product with.</param>
             <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="DotProduct" lang="cs" title="The following example shows how to use the DotProduct method."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="DotProduct" lang="vbnet" title="The following example shows how to use the DotProduct method."/>
             </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.DotProductSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Calculate the dot product.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the dot product with.</param>
            <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Increment">
            <summary>
            Increment each dimension by 1.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Increment" lang="cs" title="The following example shows how to use the Increment method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Increment" lang="vbnet" title="The following example shows how to use the Increment method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Magnitude">
            <summary>
            Gets the magnitude of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The magnitude of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Magnitude" lang="cs" title="The following example shows how to use the Magnitude method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Magnitude" lang="vbnet" title="The following example shows how to use the Magnitude method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Maximum">
            <summary>
            Get the value of the maximum dimension.
            </summary>
            <returns>The value of the maximum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Maximum" lang="cs" title="The following example shows how to use the Maximum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Maximum" lang="vbnet" title="The following example shows how to use the Maximum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.MaximumIndex">
            <summary>
            Get the index of the maximum dimension.
            </summary>
            <returns>The index of the maximum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="MinimumIndex" lang="cs" title="The following example shows how to use the MinimumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="MinimumIndex" lang="vbnet" title="The following example shows how to use the MinimumIndex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Minimum">
            <summary>
            Get the value of the minimum dimension.
            </summary>
            <returns>The value of the minimum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Minimum" lang="cs" title="The following example shows how to use the Minimum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Minimum" lang="vbnet" title="The following example shows how to use the Minimum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.MinimumIndex">
            <summary>
            Get the index of the minimum dimension.
            </summary>
            <returns>The index of the minimum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="MinimumIndex" lang="cs" title="The following example shows how to use the MinimumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="MinimumIndex" lang="vbnet" title="The following example shows how to use the MinimumIndex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Multiply(System.Double)">
            <summary>
            Multiply all dimensions of the current <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> by a <see cref="T:System.Double"/>.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to multiply by.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="MultiplyDouble" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="MultiplyDouble" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Multiply(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="MultiplyVector" lang="cs" title="The following example shows how to use the Multiple method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="MultiplyVector" lang="vbnet" title="The following example shows how to use the Multiple method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.MultiplySafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Negate">
            <summary>
            Negate each dimension.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Negate" lang="cs" title="The following example shows how to use the Negate method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Negate" lang="vbnet" title="The following example shows how to use the Negate method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Normalize">
            <summary>
            Normalize each dimension.
            </summary>
            <remarks>
            Results in the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> having a <see cref="M:NGenerics.DataStructures.Mathematical.Vector2D.Magnitude"/> of 1.
            </remarks>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Normalize" lang="cs" title="The following example shows how to use the Normalize method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Normalize" lang="vbnet" title="The following example shows how to use the Normalize method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.SetValuesSafe(System.Double[])">
            <summary>
            Set the values of the <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/>
            </summary>
            <param name="values">The values to set.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Product">
            <summary>
            Computes the product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Product" lang="cs" title="The following example shows how to use the Product method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Product" lang="vbnet" title="The following example shows how to use the Product method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Subtract(System.Double)">
            <summary>
            Subtracts a <see cref="T:System.Double"/> from the current instance.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="SubtractDouble" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="SubtractDouble" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Subtract(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="SubtractVector" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="SubtractVector" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.SubtractSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <returns>The result of the subtraction.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Sum">
            <summary>
            Computes the sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Sum" lang="cs" title="The following example shows how to use the Sum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Sum" lang="vbnet" title="The following example shows how to use the Sum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.SwapSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="other">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to swap value with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.Swap(NGenerics.DataStructures.Mathematical.Vector2D)">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.
            </summary>
            <param name="other">The <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/> to swap values with.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="other"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Swap" lang="cs" title="The following example shows how to use the Swap method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Swap" lang="vbnet" title="The following example shows how to use the Swap method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.ToArray">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:System.Double"/> array. 
            </summary>
            <returns>A <see cref="T:System.Double"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="ToArray" lang="cs" title="The following example shows how to use the ToArray method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="ToArray" lang="vbnet" title="The following example shows how to use the ToArray method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Vector2D.ToMatrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="ToMatrix" lang="cs" title="The following example shows how to use the ToMatrix method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="ToMatrix" lang="vbnet" title="The following example shows how to use the ToMatrix method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector2D.Item(System.Int32)">
            <summary>
            Gets or sets the element in the specified dimension.
            </summary>
            <exception cref="T:System.IndexOutOfRangeException"><paramref name="index"/> is &gt; 1.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="Index" lang="cs" title="The following example shows how to use the index property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="Index" lang="vbnet" title="The following example shows how to use the index property."/>
            </example> 
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector2D.X">
            <summary>
            Gets or sets the x dimension
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="NamedDimensions" lang="cs" title="The following example shows how to use the X property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="NamedDimensions" lang="vbnet" title="The following example shows how to use the X property."/>
            </example> 
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector2D.Y">
            <summary>
            Gets or sets the y dimension
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="NamedDimensions" lang="cs" title="The following example shows how to use the Y property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="NamedDimensions" lang="vbnet" title="The following example shows how to use the Y property."/>
            </example> 
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector2D.UnitVector">
            <summary>
            Creates a unit <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.
            </summary>
            <returns>A unit <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="GetUnitVector" lang="cs" title="The following example shows how to use the UnitVector property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="GetUnitVector" lang="vbnet" title="The following example shows how to use the UnitVector property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Vector2D.ZeroVector">
            <summary>
            Creates zeroed <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.
            </summary>
            <returns>A zeroed <see cref="T:NGenerics.DataStructures.Mathematical.Vector2D"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\Vector2DExamples.cs" region="GetZeroVector" lang="cs" title="The following example shows how to use the ZeroVector property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\Vector2DExamples.vb" region="GetZeroVector" lang="vbnet" title="The following example shows how to use the ZeroVector property."/>
            </example>
        </member>
        <member name="T:NGenerics.Visitors.OrderedVisitor`1">
            <summary>
            A visitor that visits objects in order (PreOrder, PostOrder, or InOrder).
            Used primarily as a base class for Visitors specializing in a specific order type.
            </summary>
            <typeparam name="T">The type of objects to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.OrderedVisitor`1.#ctor(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.OrderedVisitor`1"/> class.
            </summary>
            <param name="visitorToUse">The visitor to use when visiting the object.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitorToUse"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.Visitors.OrderedVisitor`1.VisitPreOrder(`0)">
            <summary>
            Visits the object in pre order.
            </summary>
            <param name="obj">The obj.</param>         
        </member>
        <member name="M:NGenerics.Visitors.OrderedVisitor`1.VisitPostOrder(`0)">
            <summary>
            Visits the object in post order.
            </summary>
            <param name="obj">The obj.</param>        
        </member>
        <member name="M:NGenerics.Visitors.OrderedVisitor`1.VisitInOrder(`0)">
            <summary>
            Visits the object in order.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="P:NGenerics.Visitors.OrderedVisitor`1.HasCompleted">
            <summary>
            Determines whether this visitor is done.
            </summary>
            <value></value>
            <returns>
            	<c>true</c> if this visitor is done; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="P:NGenerics.Visitors.OrderedVisitor`1.VisitorToUse">
            <summary>
            Gets the visitor to use.
            </summary>
            <value>The visitor to use.</value>
        </member>
        <member name="T:NGenerics.Sorting.SelectionSorter`1">
            <summary>
            A sorter implementing the Selection Sort algorithm.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\SelectionSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\SelectionSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.SelectionSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.Sorting.ISortable`1">
            <summary>
            An interface implemented that can be implemented by sortable collections.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
        </member>
        <member name="M:NGenerics.Sorting.ISortable`1.Sort(NGenerics.Sorting.ISorter{`0})">
            <summary>
            Sorts using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
        </member>
        <member name="M:NGenerics.Sorting.ISortable`1.Sort(NGenerics.Sorting.ISorter{`0},System.Comparison{`0})">
            <summary>
            Sorts using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
            <param name="comparison">The comparison.</param>
        </member>
        <member name="M:NGenerics.Sorting.ISortable`1.Sort(NGenerics.Sorting.ISorter{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="T:NGenerics.Sorting.CombSorter`1">
            <summary>
            A comb sorter.  
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\CombSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\CombSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.CombSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipListNode`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SkipListNode`2"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipListNode`2.#ctor(`0,`1)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SkipListNode`2"/> class.
            </summary>
            <param name="key">The key.</param>
            <param name="val">The value.</param>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipListNode`2.Key">
            <summary>
            Gets or sets the key.
            </summary>
            <value>The key.</value>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipListNode`2.Value">
            <summary>
            Gets or sets the value.
            </summary>
            <value>The value.</value>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipListNode`2.Right">
            <summary>
            Gets or sets the right node.
            </summary>
            <value>The right node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipListNode`2.Down">
            <summary>
            Gets or sets the down node.
            </summary>
            <value>The down node.</value>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2">
            <summary>
            A base class for all binary trees that use an algorithm to speed access of nodes.
            </summary>
            <typeparam name="TKey">The type of the keys in the tree.</typeparam>
            <typeparam name="TValue">The type of the values in the tree.</typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.ISearchTree`2">
            <summary>
            An interface for Search Trees.
            </summary>
            <typeparam name="TKey"></typeparam>
            <typeparam name="TValue"></typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.General.IVisitableDictionary`2">
            <summary>
            An Interface for the combining the IDictionary and IVisitableCollection interface.
            </summary>
            <typeparam name="TKey">The type of the keys in the dictionary.</typeparam>
            <typeparam name="TValue">The type of the values in the dictionary.</typeparam>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.ISearchTree`2.Maximum">
            <summary>
            Gets the largest item in the tree.
            </summary>
            <value>The largest item in the tree.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.ISearchTree`2.Minimum">
            <summary>
            Gets the smallest item in the tree.
            </summary>
            <value>The smallest item in the tree.</value>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/> class.
            </summary>
            <param name="comparer">The comparer to use when comparing items.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.DepthFirstTraversal(NGenerics.Visitors.OrderedVisitor{System.Collections.Generic.KeyValuePair{`0,`1}})">
            <summary>
            Performs a depth first traversal on the Red Black Tree.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="DepthFirstTraversal" lang="cs" title="The following example shows how to use the DepthFirstTraversal method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="DepthFirstTraversal" lang="vbnet" title="The following example shows how to use the DepthFirstTraversal method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.GetSortedEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="GetSortedEnumerator" lang="cs" title="The following example shows how to use the GetSortedEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="GetSortedEnumerator" lang="vbnet" title="The following example shows how to use the GetSortedEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.AddItem(`0,`1)">
            <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The object to use as the key of the element to add.</param>
            <param name="value">The object to use as the value of the element to add.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.RemoveItem(`0)">
            <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <returns>
            true if the element is successfully removed; otherwise, false.  This method also returns false if key was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.FindNode(`0)">
            <summary>
            Finds the node containing the specified data key.
            </summary>
            <param name="key">The key to search for.</param>
            <returns>The node with the specified key if found.  If the key is not in the tree, this method returns null.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.FindMaximumNode">
            <summary>
            Find the maximum node.
            </summary>
            <returns>The maximum node.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.FindMinimumNode">
            <summary>
            Find the minimum node.
            </summary>
            <returns>The minimum node.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.FindMaximumNode(NGenerics.DataStructures.Trees.BinaryTree{NGenerics.DataStructures.General.Association{`0,`1}})">
            <summary>
            Finds the maximum node.
            </summary>
            <param name="startNode">The start node.</param>
            <returns>The maximum node below this node.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.FindMinimumNode(NGenerics.DataStructures.Trees.BinaryTree{NGenerics.DataStructures.General.Association{`0,`1}})">
            <summary>
            Finds the minimum node.
            </summary>
            <param name="startNode">The start node.</param>
            <returns>The minimum node below this node.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.VisitNode(NGenerics.DataStructures.Trees.BinaryTree{NGenerics.DataStructures.General.Association{`0,`1}},NGenerics.Visitors.OrderedVisitor{System.Collections.Generic.KeyValuePair{`0,`1}})">
            <summary>
            Visits the node in an in-order fashion.
            </summary>
            <param name="node">The node.</param>
            <param name="visitor">The visitor.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>A enumerator to enumerate through this collection.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Add(`0,`1)">
            <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The object to use as the key of the element to add.</param>
            <param name="value">The object to use as the value of the element to add.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentException">An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.ContainsKey(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.IDictionary`2"/> contains an element with the specified key.
            </summary>
            <param name="key">The key to locate in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</param>
            <returns>
            true if the <see cref="T:System.Collections.Generic.IDictionary`2"/> contains an element with the key; otherwise, false.
            </returns>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="ContainsKey" lang="cs" title="The following example shows how to use the ContainsKey method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="ContainsKey" lang="vbnet" title="The following example shows how to use the ContainsKey method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Remove(`0)">
            <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <returns>
            true if the element is successfully removed; otherwise, false.  This method also returns false if key was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Remove" lang="cs" title="The following example shows how to use the Remove method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Remove" lang="vbnet" title="The following example shows how to use the Remove method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.TryGetValue(`0,`1@)">
            <summary>
            Tries to get a value based on the key.  No exceptions are thrown.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
            <returns>A value indicating whether the key was found in the Binary Search Tree.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="TryGetValue" lang="cs" title="The following example shows how to use the TryGetValue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="TryGetValue" lang="vbnet" title="The following example shows how to use the TryGetValue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="AddKeyValuePair" lang="cs" title="The following example shows how to use the AddKeyValuePair method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="AddKeyValuePair" lang="vbnet" title="The following example shows how to use the AddKeyValuePair method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey@TValue}}#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Accept(NGenerics.Visitors.IVisitor{System.Collections.Generic.KeyValuePair{`0,`1}})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Clear">
            <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Comparer">
            <summary>
            Gets the comparer.
            </summary>
            <value>The comparer.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Comparer" lang="cs" title="The following example shows how to use the Comparer property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Comparer" lang="vbnet" title="The following example shows how to use the Comparer property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Tree">
            <summary>
            Gets or sets the <see cref="T:NGenerics.DataStructures.Trees.BinaryTree`1"/> for this <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/>.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.MinimumAssociation">
            <summary>
            Gets the minimum value in the tree.
            </summary>
            <value>The minimum association.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.MaximumAssociation">
            <summary>
            Gets the largest item contained in the search tree.
            </summary>
            <value>The largest item.</value>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/> is empty.</exception>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Keys">
            <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <returns>An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Keys" lang="cs" title="The following example shows how to use the Keys property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Keys" lang="vbnet" title="The following example shows how to use the Keys property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Values">
            <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <returns>An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Values" lang="cs" title="The following example shows how to use the Values property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Values" lang="vbnet" title="The following example shows how to use the Values property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Item(`0)">
            <summary>
            Gets or sets the value of the node with the specified key.
            </summary>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException"><paramref name="key"/> not found.</exception>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Minimum">
            <summary>
            Gets the smallest item contained in the search tree.
            </summary>
            <value>The item element.</value>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Minimum" lang="cs" title="The following example shows how to use the Minimum property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Minimum" lang="vbnet" title="The following example shows how to use the Minimum property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2.Maximum">
            <summary>
            Gets the largest item contained in the search tree.
            </summary>
            <value>The largest item.</value>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Maximum" lang="cs" title="The following example shows how to use the Maximum property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Maximum" lang="vbnet" title="The following example shows how to use the Maximum property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.VectorN">
            <summary>
            A Vector data structure.
            </summary>
            <summary>
            A Vector data structure.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.#ctor(System.Int32)">
            <summary>
            Initialise a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/> class.
            </summary>
            <param name="dimensionCount">The number of dimensions.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="dimensionCount"/> is less than 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.AbsoluteMaximum">
            <summary>
            Get the value of the absolute maximum dimension.
            </summary>
            <returns>The value of the absolute maximum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="AbsoluteMaximum" lang="cs" title="The following example shows how to use the AbsoluteMaximum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="AbsoluteMaximum" lang="vbnet" title="The following example shows how to use the AbsoluteMaximum method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.AbsoluteMaximumIndex">
            <summary>
            Get the index of the absolute maximum dimension.
            </summary>
            <returns>The index of the absolute maximum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="AbsoluteMaximumIndex" lang="cs" title="The following example shows how to use the AbsoluteMaximumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="AbsoluteMaximumIndex" lang="vbnet" title="The following example shows how to use the AbsoluteMaximumIndex method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.AbsoluteMinimum">
            <summary>
            Get the value of the absolute minimum dimension.
            </summary>
            <returns>The value of the absolute minimum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="AbsoluteMinimum" lang="cs" title="The following example shows how to use the AbsoluteMinimum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="AbsoluteMinimum" lang="vbnet" title="The following example shows how to use the AbsoluteMinimum method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.AbsoluteMinimumIndex">
            <summary>
            Get the index of the absolute minimum dimension.
            </summary>
            <returns>The index of the absolute minimum dimension</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="AbsoluteMinimumIndex" lang="cs" title="The following example shows how to use the AbsoluteMinimumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="AbsoluteMinimumIndex" lang="vbnet" title="The following example shows how to use the AbsoluteMinimumIndex method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.AddSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Adds a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Add(System.Double)">
            <summary>
            Adds a <see cref="T:System.Double"/> to each dimension.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to add to this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="AddDouble" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="AddDouble" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.CrossProductSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Get the cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the cross product with.</param>
            <returns>The cross product of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Decrement">
            <summary>
            Decrement each dimension by 1.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Decrement" lang="cs" title="The following example shows how to use the Decrement method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Decrement" lang="vbnet" title="The following example shows how to use the Decrement method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.DeepClone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.DivideSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Divide by a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to divide by.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Divide(System.Double)">
            <summary>
            Divide each dimension by a number.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to divide by.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="DivideDouble" lang="cs" title="The following example shows how to use the Divide method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="DivideDouble" lang="vbnet" title="The following example shows how to use the Divide method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.DotProductSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Calculate the dot product.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to calculate the dot product with.</param>
            <returns>The dot product of the current instance and <paramref name="vector"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.GetUnitVector(System.Int32)">
            <summary>
            Creates zeroed <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/>.
            </summary>
            <param name="dimensionCount">The number of dimensions.</param>
            <returns>A zeroed <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/>.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="dimensionCount"/> is less than 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="GetUnitVector" lang="cs" title="The following example shows how to use the GetZeroVector method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="GetUnitVector" lang="vbnet" title="The following example shows how to use the GetZeroVector method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.GetZeroVector(System.Int32)">
            <summary>
            Creates zeroed <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/>.
            </summary>
            <param name="dimensionCount">The number of dimensions.</param>
            <returns>A zeroed <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/>.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="dimensionCount"/> is less than 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="GetZeroVector" lang="cs" title="The following example shows how to use the GetZeroVector method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="GetZeroVector" lang="vbnet" title="The following example shows how to use the GetZeroVector method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Increment">
            <summary>
            Increment each dimension by 1.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Increment" lang="cs" title="The following example shows how to use the Increment method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Increment" lang="vbnet" title="The following example shows how to use the Increment method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Magnitude">
            <summary>
            Gets the magnitude of this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The magnitude of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Magnitude" lang="cs" title="The following example shows how to use the Magnitude method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Magnitude" lang="vbnet" title="The following example shows how to use the Magnitude method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.MaximumIndex">
            <summary>
            Get the index of the maximum dimension.
            </summary>
            <returns>The index of the maximum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Maximum" lang="cs" title="The following example shows how to use the Maximum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Maximum" lang="vbnet" title="The following example shows how to use the Maximum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.MinimumIndex">
            <summary>
            Get the index of the minimum dimension.
            </summary>
            <returns>The index of the minimum dimension.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="MinimumIndex" lang="cs" title="The following example shows how to use the MinimumIndex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="MinimumIndex" lang="vbnet" title="The following example shows how to use the MinimumIndex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.MultiplySafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to multiply by.</param>
            <returns>The result of the multiply operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Multiply(System.Double)">
            <summary>
            Multiply the current <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> with a <see cref="T:System.Double"/>.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to multiply by.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="MultiplyDouble" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="MultiplyDouble" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Negate">
            <summary>
            Negate each dimension.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Negate" lang="cs" title="The following example shows how to use the Negate method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Negate" lang="vbnet" title="The following example shows how to use the Negate method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Normalize">
            <summary>
            Normalize each dimension.
            </summary>
            <remarks>
            Results in the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> having a <see cref="M:NGenerics.DataStructures.Mathematical.VectorN.Magnitude"/> of 1.
            </remarks>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Normalize" lang="cs" title="The following example shows how to use the Normalize method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Normalize" lang="vbnet" title="The following example shows how to use the Normalize method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Product">
            <summary>
            Computes the product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The product of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Product" lang="cs" title="The following example shows how to use the Product method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Product" lang="vbnet" title="The following example shows how to use the Product method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Sum">
            <summary>
            Computes the sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <returns>The sum of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Sum" lang="cs" title="The following example shows how to use the Sum method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Sum" lang="vbnet" title="The following example shows how to use the Sum method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.SubtractSafe(NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Subtracts a <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> from the current instance.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <returns>The result of the subtraction.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Subtract(System.Double)">
            <summary>
            Subtracts a <see cref="T:System.Double"/> from the current instance.
            </summary>
            <param name="number">The <see cref="T:System.Double"/> to subtract from this <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</param>
            <returns>The result of the subtraction.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="SubtractDouble" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="SubtractDouble" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.Swap(NGenerics.DataStructures.Mathematical.VectorN)">
            <summary>
            Swap all the values with another <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to swap value with.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of <paramref name="vector"/> does not equal the <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/> of the current instance.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Swap" lang="cs" title="The following example shows how to use the Swap method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Swap" lang="vbnet" title="The following example shows how to use the Swap method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.ToArray">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:System.Double"/> array. 
            </summary>
            <returns>A <see cref="T:System.Double"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="ToArray" lang="cs" title="The following example shows how to use the ToArray method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="ToArray" lang="vbnet" title="The following example shows how to use the ToArray method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.ToMatrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="ToMatrix" lang="cs" title="The following example shows how to use the ToMatrix method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="ToMatrix" lang="vbnet" title="The following example shows how to use the ToMatrix method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.op_Implicit(NGenerics.DataStructures.Mathematical.VectorN)~NGenerics.DataStructures.Mathematical.Matrix">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/>. 
            </summary>
            <param name="vector">The <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/> to convert.</param>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vector"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.Operators.cs" region="OperatorToMatrix" lang="cs" title="The following example shows how to use the convert to matrix operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.Operators.vb" region="OperatorToMatrix" lang="vbnet" title="The following example shows how to use the convert to matrix operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.op_Explicit(NGenerics.DataStructures.General.ObjectMatrix{System.Double})~NGenerics.DataStructures.Mathematical.VectorN">
            <summary>
            Copies the elements of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> to a new <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/>. 
            </summary>
            <param name="matrix">The <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> to convert.</param>
            <returns>A <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/> array containing copies of the elements of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.InvalidCastException"><paramref name="matrix"/> has more than 1 column.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.Operators.cs" region="OperatorFromMatrix" lang="cs" title="The following example shows how to use the convert from matrix operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.Operators.vb" region="OperatorFromMatrix" lang="vbnet" title="The following example shows how to use the convert from matrix operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.op_GreaterThan(NGenerics.DataStructures.Mathematical.VectorN,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/> is greater than another specified <see cref="T:NGenerics.DataStructures.Mathematical.VectorBase`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is greater than <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.Operators.cs" region="OperatorGreaterThan" lang="cs" title="The following example shows how to use the &gt; operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.Operators.vb" region="OperatorGreaterThan" lang="vbnet" title="The following example shows how to use the &gt; operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.op_LessThan(NGenerics.DataStructures.Mathematical.VectorN,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/> is less than another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is less than <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.Operators.cs" region="OperatorLessThan" lang="cs" title="The following example shows how to use the &lt; operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.Operators.vb" region="OperatorLessThan" lang="vbnet" title="The following example shows how to use the &lt; operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.op_GreaterThanOrEqual(NGenerics.DataStructures.Mathematical.VectorN,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/> is greater than or equal to another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is greater than or equal to <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.Operators.cs" region="OperatorGreaterThanOrEqualTo" lang="cs" title="The following example shows how to use the &gt;= operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.Operators.vb" region="OperatorGreaterThanOrEqualTo" lang="vbnet" title="The following example shows how to use the &gt;= operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.VectorN.op_LessThanOrEqual(NGenerics.DataStructures.Mathematical.VectorN,NGenerics.DataStructures.Mathematical.IVector{System.Double})">
            <summary>
            Determines whether one specified <see cref="T:NGenerics.DataStructures.Mathematical.VectorN"/> is less than or equal to another specified <see cref="T:NGenerics.DataStructures.Mathematical.IVector`1"/>. 
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><see langword="true"/> if the <paramref name="left"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/> is less than or equal to <paramref name="right"/>s <see cref="M:NGenerics.DataStructures.Mathematical.IVector`1.Magnitude"/>; otherwise, <see langword="false"/>.</returns>
             <exception cref="T:System.ArgumentNullException"><paramref name="left"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
             <exception cref="T:System.ArgumentNullException"><paramref name="right"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.Operators.cs" region="OperatorLessThanOrEqualTo" lang="cs" title="The following example shows how to use the &lt;= operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.Operators.vb" region="OperatorLessThanOrEqualTo" lang="vbnet" title="The following example shows how to use the &lt;= operator."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.VectorN.Item(System.Int32)">
            <summary>
            Gets or sets the element in the specified dimension.
            </summary>
            <exception cref="T:System.IndexOutOfRangeException"><paramref name="index"/> is &gt; <see cref="P:NGenerics.DataStructures.Mathematical.IVector`1.DimensionCount"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\VectorNExamples.cs" region="Index" lang="cs" title="The following example shows how to use the index property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\VectorNExamples.vb" region="Index" lang="vbnet" title="The following example shows how to use the index property."/>
            </example> 
        </member>
        <member name="T:NGenerics.Visitors.ComparableFindingVisitor`1">
            <summary>
            A visitor that searches objects for an equality, using the <see cref="T:System.IComparable"/> interface.
            </summary>	
            <typeparam name="T">The type of objects to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.ComparableFindingVisitor`1.#ctor(`0)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.ComparableFindingVisitor`1"/> class.
            </summary>
            <param name="searchValue">The search value.</param>
        </member>
        <member name="M:NGenerics.Visitors.ComparableFindingVisitor`1.Visit(`0)">
            <summary>
            Visits the specified object.
            </summary>
            <param name="obj">The object.</param>
        </member>
        <member name="P:NGenerics.Visitors.ComparableFindingVisitor`1.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.Visitors.ComparableFindingVisitor`1.Found">
            <summary>
            Gets a value indicating whether the value being searched for has been found.
            </summary>
            <value><c>true</c> if found; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.Visitors.ComparableFindingVisitor`1.SearchValue">
            <summary>
            Gets the search value.
            </summary>
            <value>The search value.</value>
        </member>
        <member name="T:NGenerics.DataStructures.General.VisitableStack`1">
            <summary>
            A custom stack data structure.
            </summary>
            <typeparam name="T">The type of elements in the visitable stack.</typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.General.IStack`1">
            <summary>
            An Interface for the Stack data structure
            </summary>
            <typeparam name="T">The type of elements in the stack.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.IStack`1.Push(`0)">
            <summary>
            Pushes the specified item onto the stack.
            </summary>
            <param name="item">The item.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IStack`1.Pop">
            <summary>
            Pops this instance from the stack.
            </summary>
            <returns>The item at the top of the stack.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IStack`1.Peek">
            <summary>
            Peeks at the top item without popping it from the stack.
            </summary>
            <returns>The item at the top of the stack.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableStack`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableStack`1"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="ConstructorCapacity" lang="cs" title="The following example shows how to use the capacity constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="ConstructorCapacity" lang="vbnet" title="The following example shows how to use the capacity constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableStack`1"/> class.
            </summary>
            <param name="collection">The collection to copy elements from.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="collection"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="ConstructorCapacity" lang="cs" title="The following example shows how to use the capacity constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="ConstructorCapacity" lang="vbnet" title="The following example shows how to use the capacity constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>        
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.Push(`0)">
            <summary>
            Pushes the specified item onto the stack.
            </summary>
            <param name="item">The item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Push" lang="cs" title="The following example shows how to use the Push method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Push" lang="vbnet" title="The following example shows how to use the Push method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.Pop">
            <summary>
            Pops this instance from the stack.
            </summary>
            <returns>The item at the top of the stack.</returns>
            <exception cref="T:System.InvalidOperationException"><see cref="T:NGenerics.DataStructures.General.VisitableStack`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Pop" lang="cs" title="The following example shows how to use the Pop method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Pop" lang="vbnet" title="The following example shows how to use the Pop method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.Peek">
            <summary>
            Peeks at the top item without popping it from the stack.
            </summary>
            <returns>The item at the top of the stack.</returns>
            <exception cref="T:System.InvalidOperationException"><see cref="T:NGenerics.DataStructures.General.VisitableStack`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Peek" lang="cs" title="The following example shows how to use the Peek method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Peek" lang="vbnet" title="The following example shows how to use the Peek method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.System#Collections#Generic#ICollection{T}#Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.Clear">
            <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableStack`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableStack`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>   
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableStack`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableStack`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableStack`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
            </summary>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableStack`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableStackExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableStackExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.Queues.PriorityQueue`1">
            <summary>
            An implementation of a Priority Queue (can be <see cref="F:NGenerics.DataStructures.Queues.PriorityQueueType.Minimum"/> or <see cref="F:NGenerics.DataStructures.Queues.PriorityQueueType.Maximum"/>).
            </summary>
            <typeparam name="T">The type of the elements in the queue.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.#ctor(NGenerics.DataStructures.Queues.PriorityQueueType)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/> class.
            </summary>
            <param name="queueType">Type of the queue.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Add(`0,System.Int32)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <param name="priority">The priority of the item.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="AddPriority" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="AddPriority" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.GetKeyEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="GetKeyEnumerator" lang="cs" title="The following example shows how to use the GetKeyEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="GetKeyEnumerator" lang="vbnet" title="The following example shows how to use the GetKeyEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Enqueue(`0)">
            <summary>
            Enqueues the specified item.
            </summary>
            <param name="item">The item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Enqueue" lang="cs" title="The following example shows how to use the Enqueue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Enqueue" lang="vbnet" title="The following example shows how to use the Enqueue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Enqueue(`0,System.Int32)">
            <summary>
            Enqueues the specified item.
            </summary>
            <param name="item">The item.</param>
            <param name="priority">The priority.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="EnqueuePriority" lang="cs" title="The following example shows how to use the Enqueue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="EnqueuePriority" lang="vbnet" title="The following example shows how to use the Enqueue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Dequeue">
            <summary>
            Dequeues the item from the head of the queue.
            </summary>
            <returns>The item at the head of the queue.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Dequeue" lang="cs" title="The following example shows how to use the Dequeue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Dequeue" lang="vbnet" title="The following example shows how to use the Dequeue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Peek">
            <summary>
            Returns the first item in the queue without removing it from the queue.
            </summary>
            <returns>The item at the head of the queue.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Peek" lang="cs" title="The following example shows how to use the Peek method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Peek" lang="vbnet" title="The following example shows how to use the Peek method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Dequeue(System.Int32@)">
            <summary>
            Dequeues the item from the head of the queue.
            </summary>
            <param name="priority">The priority of the item to dequeue.</param>
            <returns>The item at the head of the queue.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="DequeueWithPriority" lang="cs" title="The following example shows how to use the Dequeue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="DequeueWithPriority" lang="vbnet" title="The following example shows how to use the Dequeue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.Remove(`0,System.Int32@)">
            <summary>
            Removes the first occurrence of the specified item from the properity queue.
            </summary>
            <param name="item">The item to remove.</param>
            <param name="priority">The priority associated with the item.</param>
            <returns><c>true</c> if the item exists in the <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/> and has been removed; otherwise <c>false</c>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.RemovePriorityGroup(System.Int32)">
            <summary>
            Removes the items with the specified priority.
            </summary>
            <param name="priority">The priority.</param>
            <returns><c>true</c> if the priority exists in the <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/> and has been removed; otherwise <c>false</c>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.GetPriorityGroup(System.Int32)">
            <summary>
            Removes the items with the specified priority.
            </summary>
            <param name="priority">The priority.</param>
            <returns>The items with the specified priority.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.AddPriorityGroup(System.Collections.Generic.IList{`0},System.Int32)">
            <summary>
            Adds the specified items to the priority queue with the specified priority.
            </summary>
            <param name="items">The items.</param>
            <param name="priority">The priority.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="items"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.IncreaseItemPriority(System.Int32)">
            <summary>
            Increases the priority of all the items in the queue.
            </summary>
            <param name="by">The number that gets added to the priority of each item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="IncreaseItemPriority" lang="cs" title="The following example shows how to use the IncreaseItemPriority method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="IncreaseItemPriority" lang="vbnet" title="The following example shows how to use the IncreaseItemPriority method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.DecreaseItemPriority(System.Int32)">
            <summary>
            Decreases the priority of all the items in the queue.
            </summary>
            <param name="by">The number that gets subtracted to the priority of each item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="DecreaseItemPriority" lang="cs" title="The following example shows how to use the DecreaseItemPriority method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="DecreaseItemPriority" lang="vbnet" title="The following example shows how to use the DecreaseItemPriority method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.CheckTreeNotEmpty">
            <summary>
            Checks if the list is not empty, and if it is, throw an exception.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.GetNextItem">
            <summary>
            Gets the next item.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.PriorityQueue`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>An enumerator for enumerating through the collection.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.PriorityQueue`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.PriorityQueue`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.PriorityQueue`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.PriorityQueue`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.PriorityQueue`1.DefaultPriority">
            <summary>
            Gets or sets the default priority.
            </summary>
            <value>The default priority.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.PriorityQueue`1.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\PriorityQueueExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\PriorityQueueExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.ITree`1">
            <summary>
            An interface for the tree data structure
            </summary>
            <typeparam name="T">The type of elements in the tree.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.ITree`1.Add(NGenerics.DataStructures.Trees.ITree{`0})">
            <summary>
            Adds the specified child to the tree.
            </summary>
            <param name="child">The child to add..</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.ITree`1.GetChild(System.Int32)">
            <summary>
            Gets the child at the specified index.
            </summary>
            <param name="index">The index.</param>
            <returns>The child at the specified index.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.ITree`1.Remove(NGenerics.DataStructures.Trees.ITree{`0})">
            <summary>
            Removes the specified child.
            </summary>
            <param name="child">The child.</param>
            <returns>An indication of whether the child was found (and removed) from this tree.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.ITree`1.FindNode(System.Predicate{`0})">
            <summary>
            Finds the node for which the given predicate holds true.
            </summary>
            <param name="condition">The condition to test on the data item.</param>
            <returns>The fist node that matches the condition if found, otherwise null.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.ITree`1.Data">
            <summary>
            Gets the data held in this node.
            </summary>
            <value>The data.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.ITree`1.Degree">
            <summary>
            Gets the degree of this node.
            </summary>
            <value>The degree of this node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.ITree`1.Height">
            <summary>
            Gets the height of this tree..
            </summary>
            <value>The height of this tree.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.ITree`1.IsLeafNode">
            <summary>
            Gets a value indicating whether this instance is leaf node.
            </summary>
            <value>
            	<c>true</c> if this instance is leaf node; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.ITree`1.Parent">
            <summary>
            Gets the parent of the current node..
            </summary>
            <value>The parent of the current node.</value>
        </member>
        <member name="T:NGenerics.DataStructures.General.IBag`1">
            <summary>
             An interface for a <see cref="T:NGenerics.DataStructures.General.Bag`1"/> data structure.
            </summary>
            <remarks>
            A Bag (sometimes also called a multiset) is a group of object in which each 
            each member has a multiplicity, which is a natural number indicating (loosely speaking)
            how many times it is a member. For example, in the bag { a, a, b, b, b, c }, the 
            multiplicities of the members a, b, and c are respectively 2, 3, and 1.
            </remarks>
            <typeparam name="T">The type of elements in the bag.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.IBag`1.Add(`0,System.Int32)">
            <summary>
            Adds n * the specified item to the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.
            </summary>
            <param name="item">The item.</param>
            <param name="amount">The amount.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IBag`1.Subtract(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Applies the Difference operation on two <see cref="T:NGenerics.DataStructures.General.Bag`1"/>s.
            </summary>
            <param name="bag">The other <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <returns>The difference between the current <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and the specified <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IBag`1.Intersection(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Applies the Intersection operation on two <see cref="T:NGenerics.DataStructures.General.Bag`1"/>s.
            </summary>
            <param name="bag">The other bag.</param>
            <returns>The intersection of the current <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and the specified <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IBag`1.Remove(`0,System.Int32)">
            <summary>
            Removes the specified amount of items from the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.
            </summary>
            <param name="item">The item.</param>
            <param name="maximum">The maximum amount of items to remove.</param>
            <returns>An indication of whether the items were found (and removed).</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IBag`1.Union(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Applies the Union operation with two <see cref="T:NGenerics.DataStructures.General.Bag`1"/>s.
            </summary>
            <param name="bag">The other <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <returns>The union of the current bag and the specified <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IBag`1.GetCountEnumerator">
            <summary>
            Gets an enumerator that returns both the items, and the
            count of the items in the bag.
            </summary>
            <returns>An enumerator to cycle through the items in the bag.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.IBag`1.Item(`0)">
            <summary>
            Gets the count of the specified item contained in the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.Queues.Deque`1">
            <summary>
            A data structure much like a queue, except that you can enqueue and dequeue to both the head and the tail.
            </summary>
            <typeparam name="T">The type of the elements in the deque.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> class.
            </summary>
            <param name="collection">A collection implementing the <see cref="T:System.Collections.Generic.IEnumerable`1"/> interface.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="ConstructorCollection" lang="cs" title="The following example shows how to use the collection constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="ConstructorCollection" lang="vbnet" title="The following example shows how to use the collection constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.EnqueueHead(`0)">
            <summary>
            Enqueues the head.
            </summary>
            <param name="obj">The object to enqueue.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="EnqueueHead" lang="cs" title="The following example shows how to use the EnqueueHead method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="EnqueueHead" lang="vbnet" title="The following example shows how to use the EnqueueHead method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.DequeueHead">
            <summary>
            Dequeues the head.
            </summary>
            <returns>The item at the head of the deque.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="DequeueHead" lang="cs" title="The following example shows how to use the DequeueHead method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="DequeueHead" lang="vbnet" title="The following example shows how to use the DequeueHead method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.EnqueueTail(`0)">
            <summary>
            Enqueues the tail.
            </summary>
            <param name="obj">The obj.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="EnqueueTail" lang="cs" title="The following example shows how to use the EnqueueTail method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="EnqueueTail" lang="vbnet" title="The following example shows how to use the EnqueueTail method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.DequeueTail">
            <summary>
            Dequeues the tail.
            </summary>
            <returns>The item at the tail of the deque.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="DequeueTail" lang="cs" title="The following example shows how to use the DequeueTail method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="DequeueTail" lang="vbnet" title="The following example shows how to use the DequeueTail method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.System#Collections#Generic#ICollection{T}#Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.Deque`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>An enumerator that enumerates through the collection.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.Deque`1.Head">
            <summary>
            Gets the head.
            </summary>
            <value>The head.</value>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="Head" lang="cs" title="The following example shows how to use the Head property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="Head" lang="vbnet" title="The following example shows how to use the Head property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.Deque`1.Tail">
            <summary>
            Gets the tail.
            </summary>
            <value>The tail.</value>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="Tail" lang="cs" title="The following example shows how to use the Tail property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="Tail" lang="vbnet" title="The following example shows how to use the Tail property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.Deque`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.Deque`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.Deque`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.Deque`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.Deque`1.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\DequeExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\DequeExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.General.Bag`1">
            <summary>
            A Bag data structure.
            </summary>
            <remarks>
            A Bag (sometimes also called a multiset) is a group of object in which each 
            each member has a multiplicity, which is a natural number indicating (loosely speaking)
            how many times it is a member. For example, in the bag { a, a, b, b, b, c }, the 
            multiplicities of the members a, b, and c are respectively 2, 3, and 1.
            </remarks>
            <typeparam name="T">The type of elements in the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Bag`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Bag`1"/> class.
            </summary>
            <param name="capacity">The initial capacity of the bag.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="ConstructorCapacity" lang="cs" title="The following example shows how to use the capacity contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="ConstructorCapacity" lang="vbnet" title="The following example shows how to use the capacity contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Bag`1"/> class.
            </summary>
            <param name="comparer">The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to use when testing equality of items in the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="ConstructorComparer" lang="cs" title="The following example shows how to use the comparer contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="ConstructorComparer" lang="vbnet" title="The following example shows how to use the comparer contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Bag`1"/> class.
            </summary>
            <param name="capacity">The initial capacity of the bag.</param>
            <param name="comparer">The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> to use when testing equality of items in the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.#ctor(System.Collections.Generic.IDictionary{`0,System.Int32})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Bag`1"/> class.
            </summary>
            <param name="dictionary">The <see cref="T:System.Collections.Generic.IDictionary`2"/> to copy values from.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.RemoveAll(`0)">
            <summary>
            Removes all instances of  the specified item in the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.
            </summary>
            <param name="item">The <paramref name="item"/> to be removed.</param>
            <returns>A value indicating if <paramref name="item"/> was found (and removed) from the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="RemoveAll" lang="cs" title="The following example shows how to use the RemoveAll method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="RemoveAll" lang="vbnet" title="The following example shows how to use the RemoveAll method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Remove(`0,System.Int32)">
            <summary>
            Removes count occurrences of the specified <paramref name="item"/>.
            </summary>
            <param name="item">The item.</param>
            <param name="maximum">The maximum number of items to remove.</param>
            <returns>A value indicating whether the items have been removed (was found).</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="maximum"/> is less than or equal to 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="RemoveMax" lang="cs" title="The following example shows how to use the Remove method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="RemoveMax" lang="vbnet" title="The following example shows how to use the Remove method."/>
            </example>        
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Add(`0,System.Int32)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <param name="amount">The amount.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="amount"/> is less than or equal to 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="AddAmount" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="AddAmount" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.GetCountEnumerator">
            <summary>
            Returns an <see cref="T:System.Collections.Generic.IEnumerator`1"/> that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Union(NGenerics.DataStructures.General.Bag{`0})">
            <summary>
            Computes the union of this <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and the specified <paramref name="bag"/>.
            </summary>
            <param name="bag">The bag.</param>
            <returns>The union of this <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and <paramref name="bag"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="bag"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Union" lang="cs" title="The following example shows how to use the Union method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Union" lang="vbnet" title="The following example shows how to use the Union method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Subtract(NGenerics.DataStructures.General.Bag{`0})">
            <summary>
            Computes the difference between this bag and the specified <paramref name="bag"/>.
            </summary>
            <param name="bag">The bag.</param>
            <returns>The difference between this bag and <paramref name="bag"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="bag"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Subtract" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Subtract" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Intersection(NGenerics.DataStructures.General.Bag{`0})">
            <summary>
            Computes the intersection between this <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and the specified <paramref name="bag"/>.
            </summary>
            <param name="bag">The bag.</param>
            <returns>The intersection between this <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and <paramref name="bag"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="bag"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Intersection" lang="cs" title="The following example shows how to use the Intersection method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Intersection" lang="vbnet" title="The following example shows how to use the Intersection method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Accept(NGenerics.Visitors.IVisitor{System.Collections.Generic.KeyValuePair{`0,System.Int32}})">
            <summary>
            Accepts the specified <see cref="T:NGenerics.Visitors.IVisitor`1"/>.
            </summary>
            <param name="visitor">The <see cref="T:NGenerics.Visitors.IVisitor`1"/> to accept.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.IntersectionInternal(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Internal method for the Intersection operation.
            </summary>
            <param name="bag">The bag to perform the intersection on.</param>
            <returns>The result of the intersection.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.UnionInternal(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Internal method for the Union operation.
            </summary>
            <param name="bag">The bag to perform the union with.</param>
            <returns>The result of the union operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.SubtractInternal(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Internal method for the subtraction operation.
            </summary>
            <param name="bag">The bag to subtract from this bag.</param>
            <returns>The result of the subtract operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.op_Addition(NGenerics.DataStructures.General.Bag{`0},NGenerics.DataStructures.General.Bag{`0})">
            <summary>
            Operator + : Performs a union between two <see cref="T:NGenerics.DataStructures.General.Bag`1"/>s.
            </summary>
            <param name="b1">The left hand <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <param name="b2">The right hand <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <returns>The union between <paramref name="b1"/> and <paramref name="b2"/>.</returns>        
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="OperatorAdd" lang="cs" title="The following example shows how to use the + operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="OperatorAdd" lang="vbnet" title="The following example shows how to use the + operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.op_Subtraction(NGenerics.DataStructures.General.Bag{`0},NGenerics.DataStructures.General.Bag{`0})">
            <summary>
            Operator - : Performs a difference operation between two Bags.
            </summary>
            <param name="b1">The left hand <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <param name="b2">The right hand <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <returns>The union between <paramref name="b1"/> and <paramref name="b2"/>.</returns>         
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="OperatorSubtract" lang="cs" title="The following example shows how to use the - operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="OperatorSubtract" lang="vbnet" title="The following example shows how to use the - operator overload."/>
            </example>        
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.op_Multiply(NGenerics.DataStructures.General.Bag{`0},NGenerics.DataStructures.General.Bag{`0})">
            <summary>
            Operator * : Performs a intersection between two Bags.
            </summary>
            <param name="b1">The left hand <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <param name="b2">The right hand <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <returns>The union between <paramref name="b1"/> and <paramref name="b2"/>.</returns>         
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="OperatorMultiply" lang="cs" title="The following example shows how to use the * operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="OperatorMultiply" lang="vbnet" title="The following example shows how to use the * operator overload."/>
            </example>           
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified <see cref="T:NGenerics.Visitors.IVisitor`1"/>.
            </summary>
            <param name="visitor">The <see cref="T:NGenerics.Visitors.IVisitor`1"/> to accept.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>           
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of <paramref name="array"/>.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from <paramref name="arrayIndex"/> to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>   
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Remove" lang="cs" title="The following example shows how to use the Remove method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Remove" lang="vbnet" title="The following example shows how to use the Remove method."/>
            </example>        
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>        
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>        
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>         
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.NGenerics#DataStructures#General#IBag{T}#Intersection(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Applies the Intersection operation on two <see cref="T:NGenerics.DataStructures.General.Bag`1"/>s.
            </summary>
            <param name="bag">The other bag.</param>
            <returns>
            The intersection of the current <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and the specified <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.NGenerics#DataStructures#General#IBag{T}#Subtract(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Applies the Difference operation on two <see cref="T:NGenerics.DataStructures.General.Bag`1"/>s.
            </summary>
            <param name="bag">The other <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <returns>
            The difference between the current <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and the specified <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.NGenerics#DataStructures#General#IBag{T}#Union(NGenerics.DataStructures.General.IBag{`0})">
            <summary>
            Applies the Union operation with two <see cref="T:NGenerics.DataStructures.General.Bag`1"/>s.
            </summary>
            <param name="bag">The other <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</param>
            <returns>
            The union of the current bag and the specified <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Bag`1.Equals(NGenerics.DataStructures.General.Bag{`0})">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <param name="other">An object to compare with this object.</param>
            <returns>
            true if the current object is equal to the other parameter; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Equals" lang="cs" title="The following example shows how to use the Equals method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Equals" lang="vbnet" title="The following example shows how to use the Equals method."/>
            </example>     
        </member>
        <member name="P:NGenerics.DataStructures.General.Bag`1.Item(`0)">
            <summary>
            Indicates whether an item is present in this <see cref="T:NGenerics.DataStructures.General.Bag`1"/> and returns the count.
            </summary>
            <value>The item count if <paramref name="item"/> is in the <see cref="T:NGenerics.DataStructures.General.Bag`1"/>; other 0.</value>    
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Item" lang="cs" title="The following example shows how to use the indexor method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Item" lang="vbnet" title="The following example shows how to use the indexor method."/>
            </example>           
        </member>
        <member name="P:NGenerics.DataStructures.General.Bag`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <remarks>Always returns <c>false</c> for <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</remarks>
            <value>
            	<c>false</c>.
            </value>         
        </member>
        <member name="P:NGenerics.DataStructures.General.Bag`1.IsEmpty">
            <summary>
            Gets a value indicating whether this <see cref="T:NGenerics.DataStructures.General.Bag`1"/> is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>           
        </member>
        <member name="P:NGenerics.DataStructures.General.Bag`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <remarks>Always returns <c>false</c> for <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</remarks>
            <returns><c>false</c>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>           
        </member>
        <member name="P:NGenerics.DataStructures.General.Bag`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="Count" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>           
        </member>
        <member name="P:NGenerics.DataStructures.General.Bag`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
            </summary>
            <returns><c>false</c>.</returns>
            <remarks>Always returns <c>false</c> for <see cref="T:NGenerics.DataStructures.General.Bag`1"/>.</remarks>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\BagExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\BagExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>     
        </member>
        <member name="T:NGenerics.Algorithms.GraphAlgorithms">
            <summary>
            Several algorithms for use on graphs
            </summary>
        </member>
        <member name="M:NGenerics.Algorithms.GraphAlgorithms.DijkstrasAlgorithm``1(NGenerics.DataStructures.General.Graph{``0},NGenerics.DataStructures.General.Vertex{``0})">
            <summary>
            Finds the shortest paths to all other vertices from the specified source vertex using Dijkstra's Algorithm.
            </summary>
            <param name="weightedGraph">The weighted graph.</param>
            <param name="fromVertex">The source vertex.</param>
            <returns>A graph representing the shortest paths from the source node to all other nodes in the graph.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="weightedGraph"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="fromVertex"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="fromVertex"/> could not be found in <paramref name="weightedGraph"/>.</exception>
        </member>
        <member name="M:NGenerics.Algorithms.GraphAlgorithms.PrimsAlgorithm``1(NGenerics.DataStructures.General.Graph{``0},NGenerics.DataStructures.General.Vertex{``0})">
            <summary>
            Finds the minimal spanning tree of the graph supplied using Prim's algorithm.
            </summary>
            <param name="weightedGraph">The weighted graph.</param>
            <param name="fromVertex">The vertex to start from.</param>
            <returns>A graph representing the minimal spanning tree of the graph supplied.</returns>       
            <exception cref="T:System.ArgumentNullException"><paramref name="weightedGraph"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="fromVertex"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception> 
            <exception cref="T:System.ArgumentException"><paramref name="fromVertex"/> could not be found in <paramref name="weightedGraph"/>.</exception>
        </member>
        <member name="M:NGenerics.Algorithms.GraphAlgorithms.KruskalsAlgorithm``1(NGenerics.DataStructures.General.Graph{``0})">
            <summary>
            Finds the minimal spanning tree of the graph supplied.
            </summary>
            <typeparam name="T">The type of vertex, edge and graph.</typeparam>
            <param name="weightedGraph">The weighted graph.</param>
            <returns>
            A graph representing the minimal spanning tree of the graph supplied.
            </returns>
        </member>
        <member name="M:NGenerics.Algorithms.GraphAlgorithms.BuildGraphPrim``1(NGenerics.DataStructures.General.Graph{``0},System.Collections.Generic.Dictionary{NGenerics.DataStructures.General.Vertex{``0},NGenerics.Algorithms.VertexInfo{``0}})">
            <summary>
            Builds a new graph from the edges followed.
            </summary>
            <param name="weightedGraph">The weighted graph.</param>
            <param name="vertexStatus">The vertex status.</param>
            <returns>A new graph from the edges followed.</returns>
        </member>
        <member name="M:NGenerics.Algorithms.GraphAlgorithms.BuildGraphDijkstra``1(NGenerics.DataStructures.General.Graph{``0},NGenerics.DataStructures.General.Vertex{``0},System.Collections.Generic.Dictionary{NGenerics.DataStructures.General.Vertex{``0},NGenerics.Algorithms.VertexInfo{``0}})">
            <summary>
            Builds the graph for Dijkstra's algorithm with the edges followed.
            </summary>
            <param name="weightedGraph">The weighted graph.</param>
            <param name="fromVertex">The from vertex.</param>
            <param name="vertexStatus">The vertex status.</param>
            <returns>The graph for Dijkstra's algorithm with the edges followed.</returns>
        </member>
        <member name="T:NGenerics.Util.Swapper">
            <summary>
            Utility class for swapping values
            </summary>
        </member>
        <member name="M:NGenerics.Util.Swapper.Swap``1(System.Collections.Generic.IList{``0},System.Int32,System.Int32)">
            <summary>
            Swaps items in the specified positions in the given list.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="list">The list.</param>
            <param name="pos1">The position of the first item.</param>
            <param name="pos2">The position of the second item.</param>
        </member>
        <member name="T:NGenerics.DataStructures.Queues.VisitableQueue`1">
            <summary>
            A custom queue data structure extending the default .NET Queue.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Queues.VisitableQueue`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\VisitableQueueExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\VisitableQueueExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Queues.VisitableQueue`1"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\VisitableQueueExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\VisitableQueueExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Queues.VisitableQueue`1"/> class.
            </summary>
            <param name="collection">The collection whose elements are copied to the new <see cref="T:System.Collections.Generic.Queue`1"/>.</param>
            <exception cref="T:System.ArgumentNullException">collection is null.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\VisitableQueueExamples.cs" region="ConstructorCollection" lang="cs" title="The following example shows how to use the collection constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\VisitableQueueExamples.vb" region="ConstructorCollection" lang="vbnet" title="The following example shows how to use the collection constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\VisitableQueueExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\VisitableQueueExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"></see>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"></see>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.NGenerics#DataStructures#Queues#IQueue{T}#Enqueue(`0)">
            <summary>
            A custom queue data structure extending the default .NET Queue.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.NGenerics#DataStructures#Queues#IQueue{T}#Dequeue">
            <summary>
            A custom queue data structure extending the default .NET Queue.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.NGenerics#DataStructures#Queues#IQueue{T}#Peek">
            <summary>
            A custom queue data structure extending the default .NET Queue.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.System#Collections#Generic#ICollection{T}#Clear">
            <summary>
            A custom queue data structure extending the default .NET Queue.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.System#Collections#Generic#ICollection{T}#Contains(`0)">
            <summary>
            A custom queue data structure extending the default .NET Queue.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.VisitableQueue`1.System#Collections#Generic#ICollection{T}#CopyTo(`0[],System.Int32)">
            <summary>
            A custom queue data structure extending the default .NET Queue.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.VisitableQueue`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\VisitableQueueExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\VisitableQueueExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.VisitableQueue`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\VisitableQueueExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\VisitableQueueExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.VisitableQueue`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\VisitableQueueExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\VisitableQueueExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.VisitableQueue`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only.
            </summary>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only; otherwise, false.</returns>
        </member>
        <member name="T:NGenerics.DataStructures.General.IVisitableList`1">
            <summary>
            An interface combining the IVisitableCollection and IList interface.
            </summary>
            <typeparam name="T">The type of elements in the visitable list.</typeparam>
        </member>
        <member name="T:NGenerics.Visitors.ValueTrackingVisitor`2">
            <summary>
            A visitor that tracks (stores) keys from KeyValuePairs in the order they were visited.
            </summary>
            <typeparam name="TKey">The type of key of the KeyValuePair.</typeparam>
            <typeparam name="TValue">The type of value of the KeyValuePair.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.ValueTrackingVisitor`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.TrackingVisitor`1"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.Visitors.ValueTrackingVisitor`2.Visit(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Visits the specified object.
            </summary>
            <param name="obj">The object to visit.</param>
        </member>
        <member name="P:NGenerics.Visitors.ValueTrackingVisitor`2.TrackingList">
            <summary>
            Gets the tracking list.
            </summary>
            <value>The tracking list.</value>
        </member>
        <member name="P:NGenerics.Visitors.ValueTrackingVisitor`2.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <returns><c>true</c> if this instance is done; otherwise, <c>false</c>.</returns>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
        </member>
        <member name="T:NGenerics.Visitors.PostOrderVisitor`1">
            <summary>
            An Post order implementation of the <see cref="T:NGenerics.Visitors.OrderedVisitor`1"/> class.
            </summary>
            <typeparam name="T">The type of objects to be visited.</typeparam>  
        </member>
        <member name="M:NGenerics.Visitors.PostOrderVisitor`1.#ctor(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.PostOrderVisitor`1"/> class.
            </summary>
            <param name="visitor">The visitor to use when visiting the object.</param>
        </member>
        <member name="M:NGenerics.Visitors.PostOrderVisitor`1.VisitInOrder(`0)">
            <summary>
            Visits the object in order.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="M:NGenerics.Visitors.PostOrderVisitor`1.VisitPreOrder(`0)">
            <summary>
            Visits the object in pre order.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="T:NGenerics.Util.Guard">
            <summary>
            Performs common argument validation.
            </summary>
        </member>
        <member name="M:NGenerics.Util.Guard.ArgumentNotNullOrEmptyString(System.String,System.String)">
            <summary>
            Checks a string argument to ensure it isn't null or empty.
            </summary>
            <param name="argumentValue">The argument value to check.</param>
            <param name="argumentName">The name of the argument.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="argumentValue"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="argumentValue"/> is <see cref="F:System.String.Empty"/>.</exception>
        </member>
        <member name="M:NGenerics.Util.Guard.ArgumentNotNull(System.Object,System.String)">
            <summary>
            Checks an argument to ensure it isn't null.
            </summary>
            <param name="argumentValue">The argument value to check.</param>
            <param name="argumentName">The name of the argument.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="argumentValue"/> is a null reference.</exception>
        </member>
        <member name="T:NGenerics.Sorting.RadixSorter">
            <summary>
            A sorter implementing Radix Sort.
            Adapted from Wikipedia : see http://en.wikipedia.org/wiki/Radix_sort.
            </summary>    
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\RadixSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\RadixSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.RadixSorter.SortItems(System.Collections.Generic.IList{System.Int32},System.Collections.Generic.IComparer{System.Int32})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.SplayTree`2">
            <summary>
            An implementation of a Splay Tree data structure.
            </summary>
            <remarks>
            http://en.wikipedia.org/wiki/Splay_tree
            </remarks>
            <typeparam name="TKey">The type of the keys in the tree.</typeparam>
            <typeparam name="TValue">The type of the values in the tree.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.SplayTree`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.SplayTree`2"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.SplayTree`2.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.SplayTree`2"/> class.
            </summary>
            <param name="comparer">The comparer to use when comparing items.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.SplayTree`2.FindNode(`0)">
            <summary>
            Finds the node containing the specified data key.
            </summary>
            <param name="key">The key to search for.</param>
            <returns>The node with the specified key if found.  If the key is not in the tree, this method returns null.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.SplayTree`2.AddItem(`0,`1)">
            <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The object to use as the key of the element to add.</param>
            <param name="value">The object to use as the value of the element to add.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentException">An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.SplayTree`2.RemoveItem(`0)">
            <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <returns>
            true if the element is successfully removed; otherwise, false.  This method also returns false if key was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.SplayTree`2.Maximum">
            <summary>
            Gets the largest item contained in the search tree.
            </summary>
            <value>The largest item.</value>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/> is empty.</exception>
            <example>
            	<code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Maximum" lang="cs" title="The following example shows how to use the Maximum property."/>
            	<code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Maximum" lang="vbnet" title="The following example shows how to use the Maximum property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.SplayTree`2.Minimum">
            <summary>
            Gets the smallest item contained in the search tree.
            </summary>
            <value>The item element.</value>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTreeBase`2"/> is empty.</exception>
            <example>
            	<code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Trees\BinarySearchTreeBaseExamples.cs" region="Minimum" lang="cs" title="The following example shows how to use the Minimum property."/>
            	<code source="..\..\Examples\ExampleLibraryVB\DataStructures\Trees\BinarySearchTreeBaseExamples.vb" region="Minimum" lang="vbnet" title="The following example shows how to use the Minimum property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.General.HashList`2">
            <summary>
            A Dictionary that accepts multiple values for a unique key.
            </summary>
            <typeparam name="TKey">The type of the keys in the HashList.</typeparam>
            <typeparam name="TValue">The type of the values in the HashList.</typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.General.VisitableHashtable`2">
            <summary>
            A custom hashtable extending the standard Generic Dictionary.
            </summary>
            <typeparam name="TKey">The type of the keys in the dictionary.</typeparam>
            <typeparam name="TValue">The type of the values in the dictionary.</typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.General.DictionaryBase`2">
            <summary>
            A custom hashtable extending the standard Generic Dictionary.
            </summary>
            <remarks>
            <para>
            The <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class can be used by derive your 
            own dictionary type the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </para>
            <para>
            The <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class provides protected 
            methods that can be used to customize its behavior when adding and removing 
            items, clearing the dictionary, or setting the value of an existing item.
            </para>
            <para>
            <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> accepts a null reference 
            (Nothing in Visual Basic) as a valid value for reference types.
            </para>
            <para>
            Notes to Implementers: This base class is provided to make it easier for implementers 
            to create a custom dictionaries. Implementers are encouraged to extend this base class 
            instead of creating their own. 
            </para>
            </remarks>
            <typeparam name="TKey">The type of the keys in the dictionary.</typeparam>
            <typeparam name="TValue">The type of the values in the dictionary.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.#ctor(System.Collections.Generic.IDictionary{`0,`1})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </summary>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.#ctor(System.Collections.Generic.IDictionary{`0,`1},System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </summary>
            <param name="dictionary">The dictionary.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> class.
            </summary>
            <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo"/> object containing the information required to serialize the <see cref="T:System.Collections.Generic.Dictionary`2"/>.</param>
            <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext"/> structure containing the source and destination of the serialized stream associated with the <see cref="T:System.Collections.Generic.Dictionary`2"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/>.
            </summary>
            <returns>A <see cref="T:System.Collections.Generic.Dictionary`2.Enumerator"/> structure for the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.AddItem(`0,`1)">
            <summary>
            Adds the specified key and value to the dictionary.
            </summary>
            <param name="key"> The key of the element to add.</param>
            <param name="value">The value of the element to add. The value can be null for reference types.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.SetItem(`0,`1)">
            <summary>
            Sets the value associated with the specified key.
            </summary>
            <param name="key">The key of the value to set.</param>
            <param name="value">The value of the element to add. The value can be null for reference types.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.RemoveItem(`0)">
            <summary>
            Removes the value with the specified key from the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/>.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <returns>true if the element is successfully found and removed; otherwise, false. This method returns false if key is not found in the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/>.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.ClearItems">
            <summary>
            Removes all elements from the <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/>.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.VerifyKey(System.Object)">
            <summary>
            Verifies the key.
            </summary>
            <param name="key">The key.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.VerifyValueType(System.Object)">
            <summary>
            Verifies the type of the value.
            </summary>
            <param name="value">The value.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.ContainsKey(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.IDictionary`2"/> contains an element with the specified key.
            </summary>
            <returns>
            true if the <see cref="T:System.Collections.Generic.IDictionary`2"/> contains an element with the key; otherwise, false.
            </returns>
            <param name="key">The key to locate in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="ContainsKey" lang="cs" title="The following example shows how to use the ContainsKey method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="ContainsKey" lang="vbnet" title="The following example shows how to use the ContainsKey method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.Add(`0,`1)">
            <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            
            <param name="value">The object to use as the value of the element to add.</param>
            <param name="key">The object to use as the key of the element to add.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentException">An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
             </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.Remove(`0)">
            <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <returns>
            true if the element is successfully removed; otherwise, false.  This method also returns false if key was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
            <param name="key">The key of the element to remove.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Remove" lang="cs" title="The following example shows how to use the Remove method."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Remove" lang="vbnet" title="The following example shows how to use the Remove method."/>
             </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.TryGetValue(`0,`1@)">
            <summary>
            Gets the value associated with the specified key. 
            </summary>
            <param name="key">The key of the value to get.</param>
            <param name="value">When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized.</param>
            <returns><c>true</c> if the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> contains an element with the specified <paramref name="key"/>; otherwise, <c>false</c>. </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="TryGetValue" lang="cs" title="The following example shows how to use the TryGetValue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="TryGetValue" lang="vbnet" title="The following example shows how to use the TryGetValue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#Add(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="keyValuePair">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.Clear">
            <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
             </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <returns>
            <c>true</c> if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, <c>false</c>.
            </returns>
            <param name="keyValuePair">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <param name="keyValuePair">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#Generic#IEnumerable{System#Collections#Generic#KeyValuePair{TKey@TValue}}#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#Add(System.Object,System.Object)">
            <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.IDictionary"></see> object.
            </summary>
            <param name="key">The <see cref="T:System.Object"></see> to use as the key of the element to add.</param>
            <param name="value">The <see cref="T:System.Object"></see> to use as the value of the element to add.</param>
            <exception cref="T:System.ArgumentException">An element with the same key already exists in the <see cref="T:System.Collections.IDictionary"></see> object. </exception>
            <exception cref="T:System.ArgumentNullException">key is null. </exception>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.IDictionary"></see> is read-only.-or- The <see cref="T:System.Collections.IDictionary"></see> has a fixed size. </exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#Contains(System.Object)">
            <summary>
            Determines whether the <see cref="T:System.Collections.IDictionary"></see> object contains an element with the specified key.
            </summary>
            <param name="key">The key to locate in the <see cref="T:System.Collections.IDictionary"></see> object.</param>
            <returns>
            true if the <see cref="T:System.Collections.IDictionary"></see> contains an element with the key; otherwise, false.
            </returns>
            <exception cref="T:System.ArgumentNullException">key is null. </exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#GetEnumerator">
            <summary>
            Returns an <see cref="T:System.Collections.IDictionaryEnumerator"></see> object for the <see cref="T:System.Collections.IDictionary"></see> object.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IDictionaryEnumerator"></see> object for the <see cref="T:System.Collections.IDictionary"></see> object.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#Remove(System.Object)">
            <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.IDictionary"></see> object.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.IDictionary"></see> object is read-only.-or- The <see cref="T:System.Collections.IDictionary"></see> has a fixed size. </exception>
            <exception cref="T:System.ArgumentNullException">key is null. </exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.ICollection"></see> to an <see cref="T:System.Array"></see>, starting at a particular <see cref="T:System.Array"></see> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"></see> that is the destination of the elements copied from <see cref="T:System.Collections.ICollection"></see>. The <see cref="T:System.Array"></see> must have zero-based indexing.</param>
            <param name="index">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentNullException">array is null. </exception>
            <exception cref="T:System.ArgumentException">The type of the source <see cref="T:System.Collections.ICollection"></see> cannot be cast automatically to the type of the destination array. </exception>
            <exception cref="T:System.ArgumentOutOfRangeException">index is less than zero. </exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or- index is equal to or greater than the length of array.-or- The number of elements in the source <see cref="T:System.Collections.ICollection"></see> is greater than the available space from index to the end of the destination array. </exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Populates a <see cref="T:System.Runtime.Serialization.SerializationInfo"/> with the data needed to serialize the target object.
            </summary>
            <param name="context">The destination (see <see cref="T:System.Runtime.Serialization.StreamingContext"/>) for this serialization. </param>
            <param name="info">The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> to populate with data. </param>
            <exception cref="T:System.Security.SecurityException">The caller does not have the required permission. </exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.DictionaryBase`2.OnDeserialization(System.Object)">
            <summary>
            Runs when the entire object graph has been deserialized.
            </summary>
            <param name="sender">The object that initiated the callback. The functionality for this parameter is not currently implemented. </param>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.Comparer">
            <summary>
            Gets the <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> that is used to determine equality of keys for the dictionary. 
            </summary>
            <value>The <see cref="T:System.Collections.Generic.IEqualityComparer`1"/> generic interface implementation that is used to determine equality of keys for the current <see cref="T:NGenerics.DataStructures.General.DictionaryBase`2"/> and to provide hash values for the keys.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Comparer" lang="cs" title="The following example shows how to use the Comparer property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Comparer" lang="vbnet" title="The following example shows how to use the Comparer property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.Item(`0)">
            <summary>
            Gets or sets the element with the specified key.
            </summary>
            <returns>
            The element with the specified key.
            </returns>
            <param name="key">The key of the element to get or set.</param>
            <exception cref="T:System.NotSupportedException">The property is set and the <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException">The property is retrieved and key is not found.</exception>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Item" lang="cs" title="The following example shows how to use the Item property."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Item" lang="vbnet" title="The following example shows how to use the Item property."/>
             </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.Keys">
            <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <returns>
            An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Keys" lang="cs" title="The following example shows how to use the Keys property."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Keys" lang="vbnet" title="The following example shows how to use the Keys property."/>
             </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.Values">
            <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <returns>
            An <see cref="T:System.Collections.Generic.ICollection`1"/> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Values" lang="cs" title="The following example shows how to use the Values property."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Values" lang="vbnet" title="The following example shows how to use the Values property."/>
             </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>
            The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
             <example>
             <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\DictionaryBaseExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
             <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\DictionaryBaseExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
             </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#Generic#ICollection{System#Collections#Generic#KeyValuePair{TKey@TValue}}#IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only.
            </summary>
            <value></value>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only; otherwise, false.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#Item(System.Object)">
            <summary>
            Gets or sets the <see cref="T:System.Object"/> with the specified key.
            </summary>
            <value></value>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#Keys">
            <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1"></see> containing the keys of the <see cref="T:System.Collections.Generic.IDictionary`2"></see>.
            </summary>
            <value></value>
            <returns>An <see cref="T:System.Collections.Generic.ICollection`1"></see> containing the keys of the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"></see>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#Values">
            <summary>
            Gets an <see cref="T:System.Collections.Generic.ICollection`1"></see> containing the values in the <see cref="T:System.Collections.Generic.IDictionary`2"></see>.
            </summary>
            <value></value>
            <returns>An <see cref="T:System.Collections.Generic.ICollection`1"></see> containing the values in the object that implements <see cref="T:System.Collections.Generic.IDictionary`2"></see>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#IsFixedSize">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.IDictionary"></see> object has a fixed size.
            </summary>
            <value></value>
            <returns>true if the <see cref="T:System.Collections.IDictionary"></see> object has a fixed size; otherwise, false.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#IDictionary#IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only.
            </summary>
            <value></value>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"></see> is read-only; otherwise, false.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#ICollection#SyncRoot">
            <summary>
            Gets an object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"></see>.
            </summary>
            <value></value>
            <returns>An object that can be used to synchronize access to the <see cref="T:System.Collections.ICollection"></see>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.DictionaryBase`2.System#Collections#ICollection#IsSynchronized">
            <summary>
            Gets a value indicating whether access to the <see cref="T:System.Collections.ICollection"></see> is synchronized (thread safe).
            </summary>
            <value></value>
            <returns>true if access to the <see cref="T:System.Collections.ICollection"></see> is synchronized (thread safe); otherwise, false.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableHashTableExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableHashTableExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.#ctor(System.Collections.Generic.IDictionary{`0,`1})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> class.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> class.
            </summary>
            <param name="comparer">The comparer.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableHashTableExamples.cs" region="ConstructorComparer" lang="cs" title="The following example shows how to use the comparer constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableHashTableExamples.vb" region="ConstructorComparer" lang="vbnet" title="The following example shows how to use the comparer constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableHashTableExamples.cs" region="ConstructorCapacity" lang="cs" title="The following example shows how to use the capacity constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableHashTableExamples.vb" region="ConstructorCapacity" lang="vbnet" title="The following example shows how to use the capacity constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.#ctor(System.Collections.Generic.IDictionary{`0,`1},System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> class.
            </summary>
            <param name="dictionary">The dictionary.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableHashtable`2"/> class.
            </summary>
            <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo"/> object containing the information required to serialize the <see cref="T:System.Collections.Generic.Dictionary`2"/>.</param>
            <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext"/> structure containing the source and destination of the serialized stream associated with the <see cref="T:System.Collections.Generic.Dictionary`2"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableHashtable`2.Accept(NGenerics.Visitors.IVisitor{System.Collections.Generic.KeyValuePair{`0,`1}})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableHashTableExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableHashTableExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableHashtable`2.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableHashTableExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableHashTableExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableHashtable`2.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableHashTableExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableHashTableExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableHashtable`2.IsFixedSize">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.IDictionary"/> collection has a fixed size.
            </summary>
            <returns>true if the <see cref="T:System.Collections.IDictionary"/> collection has a fixed size; otherwise, false.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableHashTableExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableHashTableExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.HashList`2"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>     
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.#ctor(System.Collections.Generic.IDictionary{`0,System.Collections.Generic.IList{`1}})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.HashList`2"/> class.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.#ctor(System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.HashList`2"/> class.
            </summary>
            <param name="comparer">The comparer.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="ConstructorComparer" lang="cs" title="The following example shows how to use the comparer constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="ConstructorComparer" lang="vbnet" title="The following example shows how to use the comparer constructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.HashList`2"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="ConstructorCapacity" lang="cs" title="The following example shows how to use the capacity constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="ConstructorCapacity" lang="vbnet" title="The following example shows how to use the capacity constructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.#ctor(System.Int32,System.Collections.Generic.IEqualityComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.HashList`2"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.HashList`2"/> class.
            </summary>
            <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo"/> object containing the information required to serialize the <see cref="T:System.Collections.Generic.Dictionary`2"/>.</param>
            <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext"/> structure containing the source and destination of the serialized stream associated with the <see cref="T:System.Collections.Generic.Dictionary`2"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.GetValueEnumerator">
            <summary>
            Gets an enumerator for enumerating though values.
            </summary>
            <returns>A enumerator for enumerating through values in the <see cref="T:NGenerics.DataStructures.General.HashList`2"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="GetValueEnumerator" lang="cs" title="The following example shows how to use the GetValueEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="GetValueEnumerator" lang="vbnet" title="The following example shows how to use the GetValueEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.Add(`0,`1)">
            <summary>
            Adds the specified key.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.Add(`0,`1[])">
            <summary>
            Adds the specified key.
            </summary>
            <param name="key">The key.</param>
            <param name="values">The values.</param>   
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="AddParams" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="AddParams" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>     
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.AddItem(`0,System.Collections.Generic.IList{`1})">
            <summary>
            Adds the specified key.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The values.</param>  
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.RemoveValue(`1)">
            <summary>
            Removes the first occurrence of the value found.
            </summary>
            <param name="item">The item.</param>
            <returns>A indication of whether the item has been found (and removed) in the Hash IList.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="RemoveValue" lang="cs" title="The following example shows how to use the RemoveValue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="RemoveValue" lang="vbnet" title="The following example shows how to use the RemoveValue method."/>
            </example>     
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.RemoveAll(`1)">
            <summary>
            Removes all the occurrences of the item in the HashList
            </summary>
            <param name="item">The item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="RemoveAll" lang="cs" title="The following example shows how to use the RemoveAll method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="RemoveAll" lang="vbnet" title="The following example shows how to use the RemoveAll method."/>
            </example>     
        </member>
        <member name="M:NGenerics.DataStructures.General.HashList`2.Remove(`0,`1)">
            <summary>
            Removes all the occurrences of the item in the HashList
            </summary>
            <param name="key">The key.</param>
            <param name="item">The item.</param>
            <returns>An indication of whether the key and value pair has been found (and removed).</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="RemoveKeyValue" lang="cs" title="The following example shows how to use the RemoveAll method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="RemoveKeyValue" lang="vbnet" title="The following example shows how to use the RemoveAll method."/>
            </example>     
        </member>
        <member name="P:NGenerics.DataStructures.General.HashList`2.ValueCount">
            <summary>
            Gets the count of values in this HashList.
            </summary>
            <value>The count of values.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="ValueCount" lang="cs" title="The following example shows how to use the ValueCount property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="ValueCount" lang="vbnet" title="The following example shows how to use the ValueCount property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.HashList`2.KeyCount">
            <summary>
            Gets the count of values in this HashList.
            </summary>
            <value>The count of values.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HashListExamples.cs" region="KeyCount" lang="cs" title="The following example shows how to use the KeyCount property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HashListExamples.vb" region="KeyCount" lang="vbnet" title="The following example shows how to use the KeyCount property."/>
            </example>
        </member>
        <member name="T:NGenerics.Sorting.SortOrder">
            <summary>
            Specifies the sorting order.
            </summary>
        </member>
        <member name="F:NGenerics.Sorting.SortOrder.Ascending">
            <summary>
            Sort in ascending order.
            </summary>
        </member>
        <member name="F:NGenerics.Sorting.SortOrder.Descending">
            <summary>
            Sort in descending order.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.General.Edge`1">
            <summary>
            A class representing an edge in a graph.
            </summary>
            <typeparam name="T">The type of object the edge contains.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.Edge`1.#ctor(NGenerics.DataStructures.General.Vertex{`0},NGenerics.DataStructures.General.Vertex{`0},System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Edge`1"/> class.
            </summary>
            <param name="fromVertex">From <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.</param>
            <param name="toVertex">To <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.</param>
            <param name="isDirected">if set to <c>true</c> [is directed].</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Edge`1.#ctor(NGenerics.DataStructures.General.Vertex{`0},NGenerics.DataStructures.General.Vertex{`0},System.Double,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Edge`1"/> class.
            </summary>
            <param name="fromVertex">From <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.</param>
            <param name="toVertex">To <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.</param>
            <param name="weight">The weight associated with the edge.</param>
            <param name="isDirected">if set to <c>true</c> [is directed].</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="fromVertex"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="toVertex"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="WeightedConstructor" lang="cs" title="The following example shows how to use the constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="WeightedConstructor" lang="vbnet" title="The following example shows how to use the constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Edge`1.GetPartnerVertex(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Gets the partner vertex in this <see cref="T:NGenerics.DataStructures.General.Edge`1"/> relationship.
            </summary>
            <param name="vertex">The <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.</param>
            <returns>The partner of the <see cref="T:NGenerics.DataStructures.General.Vertex`1"/> specified in this <see cref="T:NGenerics.DataStructures.General.Edge`1"/> relationship.</returns>
            <exception cref="T:System.ArgumentException"><paramref name="vertex"/> does not equal <see cref="P:NGenerics.DataStructures.General.Edge`1.FromVertex"/> or <see cref="P:NGenerics.DataStructures.General.Edge`1.ToVertex"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="GetPartnerVertex" lang="cs" title="The following example shows how to use the GetPartnerVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="GetPartnerVertex" lang="vbnet" title="The following example shows how to use the GetPartnerVertex method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Edge`1.FromVertex">
            <summary>
            Gets the from <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.
            </summary>
            <value>The from <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="FromVertex" lang="cs" title="The following example shows how to use the FromVertex property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="FromVertex" lang="vbnet" title="The following example shows how to use the FromVertex property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Edge`1.ToVertex">
            <summary>
            Gets the to <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.
            </summary>
            <value>The to <see cref="T:NGenerics.DataStructures.General.Vertex`1"/>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="ToVertex" lang="cs" title="The following example shows how to use the ToVertex property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="ToVertex" lang="vbnet" title="The following example shows how to use the ToVertex property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Edge`1.IsDirected">
            <summary>
            Gets a value indicating whether this <see cref="T:NGenerics.DataStructures.General.Edge`1"/> is directed.
            </summary>
            <value>
            	<c>true</c> if this edge is directed; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="IsDirected" lang="cs" title="The following example shows how to use the IsDirected property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="IsDirected" lang="vbnet" title="The following example shows how to use the IsDirected property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Edge`1.Weight">
            <summary>
            Gets the weight associated with this <see cref="T:NGenerics.DataStructures.General.Edge`1"/>.
            </summary>
            <value>The weight associated with this <see cref="T:NGenerics.DataStructures.General.Edge`1"/>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="Weight" lang="cs" title="The following example shows how to use the Weight property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="Weight" lang="vbnet" title="The following example shows how to use the Weight property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Edge`1.Tag">
            <summary>
            Gets or sets the tag object contained in the edge.
            </summary>
            <value>The tag object.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\EdgeExamples.cs" region="Tag" lang="cs" title="The following example shows how to use the Tag property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\EdgeExamples.vb" region="Tag" lang="vbnet" title="The following example shows how to use the Tag property."/>
            </example>
        </member>
        <member name="T:NGenerics.Comparers.ReverseComparer`1">
            <summary>
            A comparer that wraps the IComparable interface to reproduce the opposite comparison result.
            </summary>
            <typeparam name="T">The type of the objects to compare.</typeparam>
        </member>
        <member name="M:NGenerics.Comparers.ReverseComparer`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Comparers.ReverseComparer`1"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.Comparers.ReverseComparer`1.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Comparers.ReverseComparer`1"/> class.
            </summary>
            <param name="comparer">The comparer to reverse.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.Comparers.ReverseComparer`1.Compare(`0,`0)">
            <summary>
            Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other.
            </summary>
            <param name="x">The first object to compare.</param>
            <param name="y">The second object to compare.</param>
            <returns>
            	<para>A <see cref="T:System.Int32"/> containing a value that reflects the sort order of <paramref name="x"/> as compared to <paramref name="y"/>. The following table defines the conditions under which the returned value is a negative number, zero, or a positive number.</para>
              <list type="table">
                <listheader>
                  <term>Value</term>
                  <description>Condition</description>
                </listheader>
                <item>
                  <term>Any negative number</term>
                  <description><paramref name="x"/> &lt; <paramref name="y"/>.</description>
                </item>
                <item>
                  <term>Zero</term>
                  <description><paramref name="x"/> == <paramref name="y"/>.</description>
                </item>
            		<item>
            			<term>Any positive number</term>
            			<description><paramref name="x"/> &gt; <paramref name="y"/>.</description>
            		</item>
            	</list>
            </returns>
        </member>
        <member name="P:NGenerics.Comparers.ReverseComparer`1.Comparer">
            <summary>
            Gets or sets the comparer used in this instance.
            </summary>
            <value>The comparer.</value>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="T:NGenerics.Comparers.ComparisonComparer`1">
            <summary>
            A Comparer using a Comparison delegate for comparisons between items.
            </summary>
            <typeparam name="T">The type of the objects to compare.</typeparam>
        </member>
        <member name="M:NGenerics.Comparers.ComparisonComparer`1.#ctor(System.Comparison{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Comparers.ComparisonComparer`1"/> class.
            </summary>
            <param name="comparison">The comparison.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.Comparers.ComparisonComparer`1.Compare(`0,`0)">
            <summary>
            Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other.
            </summary>
            <param name="x">The first object to compare.</param>
            <param name="y">The second object to compare.</param>
            <returns>
            	<para>A <see cref="T:System.Int32"/> containing a value that reflects the sort order of <paramref name="x"/> as compared to <paramref name="y"/>. The following table defines the conditions under which the returned value is a negative number, zero, or a positive number.</para>
              <list type="table">
                <listheader>
                  <term>Value</term>
                  <description>Condition</description>
                </listheader>
                <item>
                  <term>Any negative number</term>
                  <description><paramref name="x"/> &lt; <paramref name="y"/>.</description>
                </item>
                <item>
                  <term>Zero</term>
                  <description><paramref name="x"/> == <paramref name="y"/>.</description>
                </item>
            		<item>
            			<term>Any positive number</term>
            			<description><paramref name="x"/> &gt; <paramref name="y"/>.</description>
            		</item>
            	</list>
            </returns>
        </member>
        <member name="P:NGenerics.Comparers.ComparisonComparer`1.Comparison">
            <summary>
            Gets or sets the comparison used in this comparer.
            </summary>
            <value>The comparison used in this comparer.</value>
            <exception cref="T:System.ArgumentNullException"><paramref name="value"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="T:NGenerics.Visitors.CountingVisitor`1">
            <summary>
            A Visitor that counts items in a visitable collection.
            </summary>
            <typeparam name="T">The type of objects to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.CountingVisitor`1.Visit(`0)">
            <summary>
            Visits the specified object.
            </summary>
            <param name="obj">The object to visit.</param>
        </member>
        <member name="M:NGenerics.Visitors.CountingVisitor`1.ResetCount">
            <summary>
            Resets the count to zero.
            </summary>
        </member>
        <member name="P:NGenerics.Visitors.CountingVisitor`1.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.Visitors.CountingVisitor`1.Count">
            <summary>
            Gets the count.
            </summary>
            <value>The current count value.</value>
        </member>
        <member name="T:NGenerics.Sorting.GnomeSorter`1">
            <summary>
            A sorter implementing the Gnome sort algorithm.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\GnomeSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\GnomeSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.GnomeSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.Sorting.CocktailSorter`1">
            <summary>
            A Bi-Directional Bubble sorter.  
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\CocktailSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\CocktailSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.CocktailSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.Sorting.BubbleSorter`1">
            <summary>
            A Bubble Sorter.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\BubbleSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\BubbleSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.BubbleSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.RedBlackTree`2">
            <summary>
            An implementation of a Red-Black tree.
            </summary>
            <typeparam name="TKey">The type of the keys in the tree.</typeparam>
            <typeparam name="TValue">The type of the values in the tree.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.RedBlackTree`2"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.RedBlackTree`2"/> class.
            </summary>
            <param name="comparer">The comparer.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.IsRed(NGenerics.DataStructures.Trees.RedBlackTreeNode{`0,`1})">
            <summary>
            Determines whether the specified node is red.
            </summary>
            <param name="node">The node.</param>
            <returns>
            	<c>true</c> if the specified node is red; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.IsBlack(NGenerics.DataStructures.Trees.RedBlackTreeNode{`0,`1})">
            <summary>
            Determines whether the specified node is black.
            </summary>
            <param name="node">The node.</param>
            <returns>
            	<c>true</c> if the specified node is black; otherwise, <c>false</c>.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.InsertNode(NGenerics.DataStructures.Trees.RedBlackTreeNode{`0,`1},`0,`1)">
            <summary>
            A recursive implementation of insertion of a node into the tree.
            </summary>
            <param name="node">The start node.</param>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
            <returns>The node created in the insertion.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.SingleRotation(NGenerics.DataStructures.Trees.RedBlackTreeNode{`0,`1},System.Boolean)">
            <summary>
            Perform a single rotation on the node provided..
            </summary>
            <param name="node">The node on which to focus the rotation.</param>
            <param name="direction">The direction of the rotation.  If direction is equal to true, a right rotation is performed.  Other wise, a left rotation.</param>
            <returns>The new root of the cluster.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.DoubleRotation(NGenerics.DataStructures.Trees.RedBlackTreeNode{`0,`1},System.Boolean)">
            <summary>
            Perform a double rotation on the node provided..
            </summary>
            <param name="node">The node on which to focus the rotation.</param>
            <param name="direction">The direction of the rotation.  If direction is equal to true, a right rotation is performed.  Other wise, a left rotation.</param>
            <returns>The new root of the cluster.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.AddItem(`0,`1)">
            <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The object to use as the key of the element to add.</param>
            <param name="value">The object to use as the value of the element to add.</param>
            <exception cref="T:System.ArgumentException">An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="key"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTree`2.RemoveItem(`0)">
            <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <returns>
            true if the element is successfully removed; otherwise, false.  This method also returns false if key was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
        </member>
        <member name="T:NGenerics.DataStructures.General.Heap`1">
            <summary>
            An implementation of a Heap data structure.
            </summary>
            <typeparam name="T">The type of item stored in the heap.</typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.General.IHeap`1">
            <summary>
            An interface for the <see cref="T:NGenerics.DataStructures.General.Heap`1"/> data structure.
            </summary>
            <typeparam name="T">The type of elements in the heap.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.IHeap`1.Add(`0)">
            <summary>
            Adds the specified item.
            </summary>
            <param name="item">The item.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IHeap`1.RemoveRoot">
            <summary>
            Removes the root and returns it.
            </summary>
            <returns>The root of the <see cref="T:NGenerics.DataStructures.General.Heap`1"/>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.IHeap`1.Root">
            <summary>
            Gets the root.
            </summary>
            <value>The root.</value>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.#ctor(NGenerics.DataStructures.General.HeapType)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Heap`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.#ctor(NGenerics.DataStructures.General.HeapType,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Heap`1"/> class.
            </summary>
            <param name="type">The type of heap.</param>
            <param name="capacity">The capacity.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="ConstructorCapacity" lang="cs" title="The following example shows how to use the capacity constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="ConstructorCapacity" lang="vbnet" title="The following example shows how to use the capacity constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.#ctor(NGenerics.DataStructures.General.HeapType,System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Heap`1"/> class.
            </summary>
            <param name="type">The type of heap.</param>
            <param name="comparer">The comparer to use.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="ConstructorComparer" lang="cs" title="The following example shows how to use the comparer constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="ConstructorComparer" lang="vbnet" title="The following example shows how to use the comparer constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.#ctor(NGenerics.DataStructures.General.HeapType,System.Int32,System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Heap`1"/> class.
            </summary>
            <param name="type">The type of heap.</param>
            <param name="capacity">The initial capacity of the Heap.</param>
            <param name="comparer">The comparer to use.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.RemoveRoot">
            <summary>
            Removes the smallest item in the heap (located at the root).
            </summary>
            <returns>The value contained in the root of the Heap.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.General.Graph`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="RemoveRoot" lang="cs" title="The following example shows how to use the RemoveRoot method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="RemoveRoot" lang="vbnet" title="The following example shows how to use the RemoveRoot method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Heap`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>An enumerator for enumerating though the collection.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.Heap`1.Root">
            <summary>
            Gets the smallest item in the heap (located at the root).
            </summary>
            <returns>The value of the root of the Heap.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.General.Heap`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Root" lang="cs" title="The following example shows how to use the Root property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Root" lang="vbnet" title="The following example shows how to use the Root property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Heap`1.Type">
            <summary>
            Gets the type of heap represented by this instance.
            </summary>
            <value>The type of heap.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Type" lang="cs" title="The following example shows how to use the Type property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Type" lang="vbnet" title="The following example shows how to use the Type property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Heap`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Heap`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Heap`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Heap`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Heap`1.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\HeapExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\HeapExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="T:NGenerics.Comparers.EdgeWeightComparer`1">
            <summary>
            A comparer for comparing weights on graph edges.
            </summary>
            <typeparam name="T">The type of the objects to compare.</typeparam>
        </member>
        <member name="M:NGenerics.Comparers.EdgeWeightComparer`1.Compare(NGenerics.DataStructures.General.Edge{`0},NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other.
            </summary>
            <param name="x">The first object to compare.</param>
            <param name="y">The second object to compare.</param>
            <returns>
            	<para>A <see cref="T:System.Int32"/> containing a value that reflects the sort order of <paramref name="x"/> as compared to <paramref name="y"/>. The following table defines the conditions under which the returned value is a negative number, zero, or a positive number.</para>
              <list type="table">
                <listheader>
                  <term>Value</term>
                  <description>Condition</description>
                </listheader>
                <item>
                  <term>Any negative number</term>
                  <description><paramref name="x"/> &lt; <paramref name="y"/>.</description>
                </item>
                <item>
                  <term>Zero</term>
                  <description><paramref name="x"/> == <paramref name="y"/>.</description>
                </item>
            		<item>
            			<term>Any positive number</term>
            			<description><paramref name="x"/> &gt; <paramref name="y"/>.</description>
            		</item>
            	</list>
            </returns>
        </member>
        <member name="T:NGenerics.Visitors.DummyVisitor`1">
            <summary>
            A dummy visitor - that does absolutely nothing with visits.
            Believe it or not, it's actually useful in some situations.
            </summary>
        </member>
        <member name="M:NGenerics.Visitors.DummyVisitor`1.Visit(`0)">
            <summary>
            "Visits" the specified object.
            </summary>
            <param name="obj">The object to visit.</param>
        </member>
        <member name="P:NGenerics.Visitors.DummyVisitor`1.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
        </member>
        <member name="T:NGenerics.Sorting.ShellSorter`1">
            <summary>
            A sorter that implements the Shell Sort algorithm.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\ShellSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\ShellSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.ShellSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.Sorting.MergeSorter`1">
            <summary>
            A merge sorter.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\MergeSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\MergeSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.MergeSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="M:NGenerics.Sorting.MergeSorter`1.MergeSort(System.Int32,System.Int32,System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Performs a merge sort.
            </summary>
            <param name="leftBoundary">The left boundary.</param>
            <param name="rightBoundary">The right boundary.</param>
            <param name="list">The list.</param>
            <param name="comparer">The comparer.</param>
        </member>
        <member name="T:NGenerics.DataStructures.General.SortedList`1">
            <summary>
            An implementation of a SortedList data structure, which keeps any objects
            added to it sorted.
            </summary>
            <typeparam name="T">The type of elements in the sorted list.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SortedList`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SortedList`1"/> class.
            </summary>
            <param name="comparer">The comparer to use.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="ConstructorComparer" lang="cs" title="The following example shows how to use the Comparer contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="ConstructorComparer" lang="vbnet" title="The following example shows how to use the Comparer contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SortedList`1"/> class.
            </summary>
            <param name="capacity">The initial capacity of the sorted list.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="ConstructorCapacity" lang="cs" title="The following example shows how to use the contructor with an inital capacity."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="ConstructorCapacity" lang="vbnet" title="The following example shows how to use the contructor with an inital capacity."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.#ctor(System.Int32,System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SortedList`1"/> class.
            </summary>
            <param name="capacity">The initial capacity of the sorted list.</param>
            <param name="comparer">The comparer to use.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SortedList`1"/> class.
            </summary>
            <param name="collection">The collection to copy into the sorted list.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="ConstructorCollection" lang="cs" title="The following example shows how to use the collections contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="ConstructorCollection" lang="vbnet" title="The following example shows how to use the collections contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.RemoveAt(System.Int32)">
            <summary>
            Removes the item at the specified index.
            </summary>
            <param name="index">The index of the item</param> 
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="RemoveAt" lang="cs" title="The following example shows how to use the RemoveAt method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="RemoveAt" lang="vbnet" title="The following example shows how to use the RemoveAt method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.Add(`0)">
            <summary>
            Adds the specified object.
            </summary>
            <param name="item">The object to add to the collection</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.Remove(`0)">
            <summary>
            Removes the specified item.
            </summary>
            <param name="item">The item to remove.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.Contains(`0)">
            <summary>
            Determines whether the Sorted List contains the specified item.
            </summary>
            <param name="item">The item.</param>
            <returns>
            	<c>true</c> if the item is contained in the list; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.IndexOf(`0)">
            <summary>
            Returns the first index of the item specified.
            </summary>
            <param name="item">The index of the first item found, -1 if the item isn't found.</param>
            <returns>
            The index of item if found in the list; otherwise, -1.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="IndexOf" lang="cs" title="The following example shows how to use the IndexOf method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="IndexOf" lang="vbnet" title="The following example shows how to use the IndexOf method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SortedList`1.System#Collections#Generic#IList{T}#Insert(System.Int32,`0)">
            <summary>
            Inserts the item at the specified index.
            </summary>
            <param name="index">The index.</param>
            <param name="item">The item to insert.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.Comparer">
            <summary>
            Gets the comparer.
            </summary>
            <value>The comparer.</value>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <remarks>Always returns <c>false</c>.</remarks>
            <value><c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.Item(System.Int32)">
            <summary>
            Gets the item at the specified position.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <remarks>Always returns <c>false</c>.</remarks>
            <value>
            	<c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SortedListExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SortedListExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SortedList`1.System#Collections#Generic#IList{T}#Item(System.Int32)">
            <summary>
            Gets or sets the value at the specified index.
            </summary>
            <exception cref="T:System.NotSupportedException">When set is called.</exception>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.RedBlackTreeNode`2">
            <summary>
            A container class, used for the RedBlackTree.
            </summary>
            <typeparam name="TKey">The type of the key.</typeparam>
            <typeparam name="TValue">The type of the value.</typeparam>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.BinaryTree`1">
            <summary>
            An implementation of a Binary Tree data structure.
            </summary>
            <typeparam name="T">The type of elements in the tree.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.#ctor(`0)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.BinaryTree`1"/> class.
            </summary>
            <param name="data">The data contained in this node.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.#ctor(`0,`0,`0)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.BinaryTree`1"/> class.
            </summary>
            <param name="data">The data.</param>
            <param name="left">The data of the left subtree.</param>
            <param name="right">The data of the right subtree.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.#ctor(`0,NGenerics.DataStructures.Trees.BinaryTree{`0},NGenerics.DataStructures.Trees.BinaryTree{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.BinaryTree`1"/> class.
            </summary>
            <param name="data">The data contained in this node.</param>
            <param name="left">The left subtree.</param>
            <param name="right">The right subtree.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.Remove(NGenerics.DataStructures.Trees.BinaryTree{`0})">
            <summary>
            Removes the specified child.
            </summary>
            <param name="child">The child.</param>
            <returns>A value indicating whether the child was found (and removed) from this tree.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.NGenerics#DataStructures#Trees#ITree{T}#Add(NGenerics.DataStructures.Trees.ITree{`0})">
            <summary>
            Adds the specified child to the tree.
            </summary>
            <param name="child">The child to add..</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.NGenerics#DataStructures#Trees#ITree{T}#GetChild(System.Int32)">
            <summary>
            Gets the child at the specified index.
            </summary>
            <param name="index">The index.</param>
            <returns>The child at the specific index.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.NGenerics#DataStructures#Trees#ITree{T}#Remove(NGenerics.DataStructures.Trees.ITree{`0})">
            <summary>
            Removes the specified child.
            </summary>
            <param name="child">The child.</param>
            <returns>A value indicating whether the specified tree was found.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.NGenerics#DataStructures#Trees#ITree{T}#FindNode(System.Predicate{`0})">
            <summary>
            Finds the node for which the given predicate holds true.
            </summary>
            <param name="condition">The condition to test on the data item.</param>
            <returns>The first node that matches the condition supplied.  If a node is not found, null is returned.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.FindNode(System.Predicate{`0})">
            <summary>
            Finds the node with the specified condition.  If a node is not found matching
            the specified condition, null is returned.
            </summary>
            <param name="condition">The condition to test.</param>
            <returns>The first node that matches the condition supplied.  If a node is not found, null is returned.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="condition"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.GetChild(System.Int32)">
            <summary>
            Gets the child at the specified index.
            </summary>
            <param name="index">The index of the child in question.</param>
            <returns>The child at the specified index.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="index"/> does not equal 0 or 1.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.DepthFirstTraversal(NGenerics.Visitors.OrderedVisitor{`0})">
            <summary>
            Performs a depth first traversal on this tree with the specified visitor.
            </summary>
            <param name="orderedVisitor">The ordered visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="orderedVisitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.BreadthFirstTraversal(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Performs a breadth first traversal on this tree with the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.RemoveLeft">
            <summary>
            Removes the left child.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.RemoveRight">
            <summary>
            Removes the left child.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.Add(NGenerics.DataStructures.Trees.BinaryTree{`0})">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="subtree">The subtree.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Trees.BinaryTree`1"/> is full.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="subtree"/> is null (Nothing in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.FindMaximumChildHeight">
            <summary>
            Finds the maximum height between the child nodes.
            </summary>
            <returns>The maximum height of the tree between all paths from this node and all leaf nodes.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinaryTree`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>A enumerator to enumerate though the collection.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.NGenerics#DataStructures#Trees#ITree{T}#Parent">
            <summary>
            Gets the parent of the current node..
            </summary>
            <value>The parent of the current node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Parent">
            <summary>
            Gets the parent of the current node..
            </summary>
            <value>The parent of the current node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Left">
            <summary>
            Gets or sets the left subtree.
            </summary>
            <value>The left subtree.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Right">
            <summary>
            Gets or sets the right subtree.
            </summary>
            <value>The right subtree.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Data">
            <summary>
            Gets or sets the value contained in this node.
            </summary>
            <value>The value contained in this node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Degree">
            <summary>
            Gets the degree (number of child nodes) of this node.
            </summary>
            <value>The degree of this node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Height">
            <summary>
            Gets the height of the this tree.
            </summary>
            <value>The height.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.IsLeafNode">
            <summary>
            Gets a value indicating whether this instance is leaf node.
            </summary>
            <value>
            	<c>true</c> if this instance is leaf node; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.Item(System.Int32)">
            <summary>
            Gets the <see cref="T:NGenerics.DataStructures.Trees.BinaryTree`1"/> at the specified index.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.BinaryTree`1.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.RedBlackTreeNode`2.#ctor(`0,`1)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.RedBlackTreeNode`2"/> class.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.RedBlackTreeNode`2.Key">
            <summary>
            Gets or sets the key.
            </summary>
            <value>The key.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.RedBlackTreeNode`2.Value">
            <summary>
            Gets or sets the value.
            </summary>
            <value>The value.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.RedBlackTreeNode`2.Color">
            <summary>
            Gets or sets the color of the current node.
            </summary>
            <value>The color of the node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.RedBlackTreeNode`2.Item(System.Boolean)">
            <summary>
            Gets or sets the <see cref="T:NGenerics.DataStructures.Trees.BinaryTree`1"/> with the specified direction.
            </summary>
            <value></value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.RedBlackTreeNode`2.Left">
            <summary>
            Gets or sets the left subtree.
            </summary>
            <value>The left subtree.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.RedBlackTreeNode`2.Right">
            <summary>
            Gets or sets the right subtree.
            </summary>
            <value>The right subtree.</value>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.GeneralTree`1">
            <summary>
            A general tree data structure that can hold any amount of nodes.
            </summary>
            <typeparam name="T">The type of elements in the tree.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.#ctor(`0)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.GeneralTree`1"/> class.
            </summary>
            <param name="data">The data held in this tree.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.NGenerics#DataStructures#Trees#ITree{T}#Add(NGenerics.DataStructures.Trees.ITree{`0})">
            <summary>
            Adds the specified child to the tree.
            </summary>
            <param name="child">The child to add..</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.NGenerics#DataStructures#Trees#ITree{T}#GetChild(System.Int32)">
            <summary>
            Gets the child at the specified index.
            </summary>
            <param name="index">The index.</param>
            <returns>The child node at the specified index.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.NGenerics#DataStructures#Trees#ITree{T}#Remove(NGenerics.DataStructures.Trees.ITree{`0})">
            <summary>
            Removes the specified child.
            </summary>
            <param name="child">The child.</param>
            <returns>A value indicating whether the child was found in this tree.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.NGenerics#DataStructures#Trees#ITree{T}#FindNode(System.Predicate{`0})">
            <summary>
            Finds the node for which the given predicate holds true.
            </summary>
            <param name="condition">The condition to test on the data item.</param>
            <returns>The first node that matches the condition supplied.  If a node is not found, null is returned.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.FindNode(System.Predicate{`0})">
            <summary>
            Finds the node with the specified condition.  If a node is not found matching
            the specified condition, null is returned.
            </summary>
            <param name="condition">The condition to test.</param>
            <returns>The first node that matches the condition supplied.  If a node is not found, null is returned.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="condition"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.GetChild(System.Int32)">
            <summary>
            Gets the child at the specified index.
            </summary>
            <param name="index">The index.</param>
            <returns>The child at the specified index.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.DepthFirstTraversal(NGenerics.Visitors.OrderedVisitor{`0})">
            <summary>
            Performs a depth first traversal on this tree with the specified visitor.
            </summary>
            <param name="orderedVisitor">The ordered visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="orderedVisitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.BreadthFirstTraversal(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Performs a breadth first traversal on this tree with the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Add(NGenerics.DataStructures.Trees.GeneralTree{`0})">
            <summary>
            Adds the child tree to this node.
            </summary>
            <param name="child">The child tree to add.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Remove(NGenerics.DataStructures.Trees.GeneralTree{`0})">
            <summary>
            Removes the specified child node from the tree.
            </summary>
            <param name="child">The child tree to remove.</param>
            <returns>A value indicating whether the child was found (and removed) from this tree.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.RemoveAt(System.Int32)">
            <summary>
            Removes the child at the specified index.
            </summary>
            <param name="index">The index.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.SortAllDescendants(NGenerics.Sorting.ISorter{NGenerics.DataStructures.Trees.GeneralTree{`0}},System.Comparison{NGenerics.DataStructures.Trees.GeneralTree{`0}})">
            <summary>
            Sorts all descendants using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
            <param name="comparison">The comparison.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="sorter"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.SortAllDescendants(NGenerics.Sorting.ISorter{NGenerics.DataStructures.Trees.GeneralTree{`0}},System.Collections.Generic.IComparer{NGenerics.DataStructures.Trees.GeneralTree{`0}})">
            <summary>
            Sorts all descendants using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
            <param name="comparer">The comparer.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="sorter"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.FindMaximumChildHeight">
            <summary>
            Finds the maximum height between the child nodes.
            </summary>
            <returns>The maximum height of all paths between this node and all leaf nodes.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.NGenerics#Sorting#ISortable{NGenerics#DataStructures#Trees#GeneralTree{T}}#Sort(NGenerics.Sorting.ISorter{NGenerics.DataStructures.Trees.GeneralTree{`0}})">
            <summary>
            Sorts the direct children using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Sort(NGenerics.Sorting.ISorter{NGenerics.DataStructures.Trees.GeneralTree{`0}},System.Comparison{NGenerics.DataStructures.Trees.GeneralTree{`0}})">
            <summary>
            Sorts using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
            <param name="comparison">The comparison.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="sorter"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.GeneralTree`1.Sort(NGenerics.Sorting.ISorter{NGenerics.DataStructures.Trees.GeneralTree{`0}},System.Collections.Generic.IComparer{NGenerics.DataStructures.Trees.GeneralTree{`0}})">
            <summary>
            Sorts using the specified sorter.
            </summary>
            <param name="sorter">The sorter to use in the sorting process.</param>
            <param name="comparer">The comparer.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="sorter"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
            </summary>
            <value></value>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.Ancestors">
            <summary>
            Retrieves the Ancestors of this node, in the same order
            as the path from the current node to the root.
            </summary>
            <value>The ancestors.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.ChildNodes">
            <summary>
            Gets the child nodes of this node.
            </summary>
            <value>The child nodes.</value>
            <remarks>The ChildNodes list returned is read-only.</remarks>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.Parent">
            <summary>
            Gets the parent of this node.
            </summary>
            <value>The parent of this node.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.Degree">
            <summary>
            Gets the degree (number of child nodes).
            </summary>
            <value>The degree.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.Height">
            <summary>
            Gets the height of the this tree.
            </summary>
            <value>The height.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.Data">
            <summary>
            Gets the data.
            </summary>
            <value>The data.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.IsLeafNode">
            <summary>
            Gets a value indicating whether this instance is leaf node.
            </summary>
            <value>
            	<c>true</c> if this instance is leaf node; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Trees.GeneralTree`1.Item(System.Int32)">
            <summary>
            Gets the <see cref="T:NGenerics.DataStructures.Trees.GeneralTree`1"/> at the specified index.
            </summary>
        </member>
        <member name="T:NGenerics.Sorting.ShakerSorter`1">
            <summary>
            A Shaker Sorter.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\ShakerSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\ShakerSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.ShakerSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.Sorting.QuickSorter`1">
            <summary>
            A Quick Sort sorter.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\QuickSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\QuickSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.QuickSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="M:NGenerics.Sorting.QuickSorter`1.QuickSort(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0},System.Int32,System.Int32)">
            <summary>
            Quicks the sort.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer.</param>
            <param name="leftBoundary">The left boundary.</param>
            <param name="rightBoundary">The right boundary.</param>
        </member>
        <member name="M:NGenerics.Sorting.QuickSorter`1.GetPivot(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0},System.Int32,System.Int32)">
            <summary>
            Gets the pivot.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer.</param>
            <param name="leftBoundary">The left boundary.</param>
            <param name="rightBoundary">The right boundary.</param>
        </member>
        <member name="T:NGenerics.DataStructures.General.SkipList`2">
            <summary>
            A Skip List data structure
            </summary>
            <typeparam name="TKey">The type of the keys in the dictionary.</typeparam>
            <typeparam name="TValue">The type of the values in the dictionary.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SkipList`2"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SkipList`2"/> class.
            </summary>
            <param name="comparer">The comparer.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="ConstructorComparer" lang="cs" title="The following example shows how to use the comparer contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="ConstructorComparer" lang="vbnet" title="The following example shows how to use the comparer contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.#ctor(System.Int32,System.Double,System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.SkipList`2"/> class.
            </summary>
            <param name="maximumLevel">The maximum level.</param>
            <param name="probability">The probability.</param>
            <param name="comparer">The comparer.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="maximumLevel"/> is less than 1.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="probability"/> is less than 0.1.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="probability"/> is greater than 0.9.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.Accept(NGenerics.Visitors.IVisitor{System.Collections.Generic.KeyValuePair{`0,`1}})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.Add(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Adds the specified item.
            </summary>
            <param name="item">The item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="AddKeyValue" lang="cs" title="The following example shows how to use the AddKeyValue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="AddKeyValue" lang="vbnet" title="The following example shows how to use the AddKeyValue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.Clear">
            <summary>
            Clears this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.Contains(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Determines whether [contains] <paramref name="item"/>.
            </summary>
            <param name="item">The item.</param>
            <returns>
            	<c>true</c> if [contains] <paramref name="item"/>; otherwise, <c>false</c>.
            </returns>		
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="ContainsKeyValue" lang="cs" title="The following example shows how to use the ContainsKeyValue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="ContainsKeyValue" lang="vbnet" title="The following example shows how to use the ContainsKeyValue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.CopyTo(System.Collections.Generic.KeyValuePair{`0,`1}[],System.Int32)">
            <summary>
            Copies to.
            </summary>
            <param name="array">The array.</param>
            <param name="arrayIndex">Index of the array.</param>	
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.Remove(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Removes the specified <paramref name="item"/>.
            </summary>
            <param name="item">The <paramref name="item"/>.</param>
            <returns>A value indicating whether the <paramref name="item"/> was found in the <see cref="T:NGenerics.DataStructures.General.SkipList`2"/>.</returns>	
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.Add(`0,`1)">
            <summary>
            Adds the specified key.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
            <exception cref="T:System.ArgumentException"><paramref name="key"/> already in list.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.ContainsKey(`0)">
            <summary>
            Determines whether the specified key contains key.
            </summary>
            <param name="key">The key.</param>
            <returns>
            	<c>true</c> if the specified key contains key; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="ContainsKey" lang="cs" title="The following example shows how to use the ContainsKey method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="ContainsKey" lang="vbnet" title="The following example shows how to use the ContainsKey method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.Remove(`0)">
            <summary>
            Removes the specified key.
            </summary>
            <param name="key">The key.</param>
            <returns>A value indicating whether the key was found (and removed) in the tree.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Remove" lang="cs" title="The following example shows how to use the Remove method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Remove" lang="vbnet" title="The following example shows how to use the Remove method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.TryGetValue(`0,`1@)">
            <summary>
            Tries to get the value with the specified key.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
            <returns>A value indicating whether the node with the specified key was found in the tree.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="TryGetValue" lang="cs" title="The following example shows how to use the TryGetValue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="TryGetValue" lang="vbnet" title="The following example shows how to use the TryGetValue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>An enumerator for enumerating though the collection.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.SkipList`2.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>An enumerator for enumerating though the collection.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value><c>true</c> if this collection is empty; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.Count">
            <summary>
            Gets the count.
            </summary>
            <value>The count.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.Keys">
            <summary>
            Gets the keys.
            </summary>
            <value>The keys.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Keys" lang="cs" title="The following example shows how to use the Keys property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Keys" lang="vbnet" title="The following example shows how to use the Keys property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.Values">
            <summary>
            Gets the values.
            </summary>
            <value>The values.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Values" lang="cs" title="The following example shows how to use the Values property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Values" lang="vbnet" title="The following example shows how to use the Values property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.Item(`0)">
            <summary>
            Gets or sets the value in the node with the specified key.
            </summary>
            <exception cref="T:System.Collections.Generic.KeyNotFoundException"><paramref name="key"/> not found.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Item" lang="cs" title="The following example shows how to use the Item property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Item" lang="vbnet" title="The following example shows how to use the Item property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.Comparer">
            <summary>
            Gets the comparer used to compare items in this instance.
            </summary>
            <value>The comparer.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Comparer" lang="cs" title="The following example shows how to use the Comparer property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Comparer" lang="vbnet" title="The following example shows how to use the Comparer property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.Probability">
            <summary>
            Gets the probability.
            </summary>
            <value>The probability.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="Probability" lang="cs" title="The following example shows how to use the Probability property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="Probability" lang="vbnet" title="The following example shows how to use the Probability property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.MaximumListLevel">
            <summary>
            Gets the maximum level.
            </summary>
            <value>The maximum level.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="MaximumListLevel" lang="cs" title="The following example shows how to use the MaximumListLevel property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="MaximumListLevel" lang="vbnet" title="The following example shows how to use the MaximumListLevel property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.SkipList`2.CurrentListLevel">
            <summary>
            Gets the current list level.
            </summary>
            <value>The current list level.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SkipListExamples.cs" region="CurrentListLevel" lang="cs" title="The following example shows how to use the CurrentListLevel property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SkipListExamples.vb" region="CurrentListLevel" lang="vbnet" title="The following example shows how to use the CurrentListLevel property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.General.Singleton`1">
            <summary>
            A generic Singleton pattern implementation.
            </summary>
            <typeparam name="T">The type of object to create a single instance of.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SingletonExamples.cs" region="Singleton" lang="cs" title="The following example shows how to use the Instance method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SingletonExamples.vb" region="Singleton" lang="vbnet" title="The following example shows how to use the Instance method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Singleton`1.Instance">
            <summary>
            Gets the instance.
            </summary>
            <value>The instance.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\SingletonExamples.cs" region="Singleton" lang="cs" title="The following example shows how to use the Instance method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\SingletonExamples.vb" region="Singleton" lang="vbnet" title="The following example shows how to use the Instance method."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.General.VisitableLinkedList`1">
            <summary>
            A custom Linked List data structure, extending the default <see cref="T:System.Collections.Generic.LinkedList`1"/>, implementing <see cref="T:NGenerics.DataStructures.General.IVisitableCollection`1"/>.
            </summary>
            <typeparam name="T">The type of elements in the <see cref="T:NGenerics.DataStructures.General.VisitableLinkedList`1"/>.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableLinkedList`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:System.Collections.Generic.LinkedList`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableLinkedListExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableLinkedListExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableLinkedList`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:System.Collections.Generic.LinkedList`1"/> class.
            </summary>
            <param name="collection">The collection.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableLinkedListExamples.cs" region="ConstructorCollection" lang="cs" title="The following example shows how to use the collection constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableLinkedListExamples.vb" region="ConstructorCollection" lang="vbnet" title="The following example shows how to use the collection constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableLinkedList`1.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Collections.Generic.LinkedList`1"/> class.
            </summary>
            <param name="info">A <see cref="T:System.Runtime.Serialization.SerializationInfo"/> object containing the information required to serialize the <see cref="T:System.Collections.Generic.LinkedList`1"/>.</param>
            <param name="context">A <see cref="T:System.Runtime.Serialization.StreamingContext"/> object containing the source and destination of the serialized stream associated with the <see cref="T:System.Collections.Generic.LinkedList`1"/>.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableLinkedList`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableLinkedListExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableLinkedListExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableLinkedList`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableLinkedListExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableLinkedListExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableLinkedList`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableLinkedListExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableLinkedListExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableLinkedList`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableLinkedListExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableLinkedListExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.ComplexNumber">
            <summary>
            A Complex Number data structure.  
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.#ctor(System.Double,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.ComplexNumber"/> class.
            </summary>
            <param name="real">The real part of the number.</param>
            <param name="imaginary">The imaginary part of the number.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Equals(NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <param name="other">An object to compare with this object.</param>
            <returns>
            true if the current object is equal to the other parameter; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Equals" lang="cs" title="The following example shows how to use the Equals method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Equals" lang="vbnet" title="The following example shows how to use the Equals method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Multiply(NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Times the number according *.
            </summary>
            <param name="complex">The matrix to multiply this matrix with.</param>
            <returns>The result of the times operation.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="MultiplyComplexNumber" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="MultiplyComplexNumber" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Multiply(System.Double)">
            <summary>
            Times the numbers according to the operator *.
            </summary>
            <param name="number">The number to multiply this number with.</param>
            <returns>The result of the times operation.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="MultiplyDouble" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="MultiplyDouble" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Divide(NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Divides the numbers according to the operator /.
            </summary>
            <param name="number">The number to divide this number with.</param>
            <returns>The result of the divide operation.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="DivideComplexNumber" lang="cs" title="The following example shows how to use the Divide method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="DivideComplexNumber" lang="vbnet" title="The following example shows how to use the Divide method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Divide(System.Double)">
            <summary>
            Divides the numbers according to the operator /.
            </summary>
            <param name="number">The number to divide this number with.</param>
            <returns>The result of the divide operation.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="DivideDouble" lang="cs" title="The following example shows how to use the Divide method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="DivideDouble" lang="vbnet" title="The following example shows how to use the Divide method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Add(NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Adds two numbers according operator +.
            </summary>
            <param name="number">The number to add to this number.</param>
            <returns>The result of the addition operation.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Subtract(NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Subtracts the number according -.
            </summary>
            <param name="complex">The matrix to subtract from this matrix.</param>
            <returns>The result of the subtraction.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Subtract" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Subtract" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.ToMatrix">
            <summary>
            Converts the current complex number to it's matrix representation.
            </summary>
            <returns>The <see cref="T:NGenerics.DataStructures.Mathematical.IMathematicalMatrix"/> representation of the <see cref="T:NGenerics.DataStructures.Mathematical.ComplexNumber"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="ToMatrix" lang="cs" title="The following example shows how to use the ToMatrix method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="ToMatrix" lang="vbnet" title="The following example shows how to use the ToMatrix method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Addition(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Overload of the operator + 
            </summary>
            <param name="left">The left hand number.</param>
            <param name="right">The right hand number.</param>
            <returns>The result of the addition.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorPlus" lang="cs" title="The following example shows how to use the plus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorPlus" lang="vbnet" title="The following example shows how to use the plus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Subtraction(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Overload of the operator - 
            </summary>
            <param name="left">The left hand number.</param>
            <param name="right">The right hand number.</param>
            <returns>The result of the subtraction.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorMinus" lang="cs" title="The following example shows how to use the minus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorMinus" lang="vbnet" title="The following example shows how to use the minus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Multiply(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="left">The left hand number.</param>
            <param name="right">The right hand number.</param>
            <returns>The result of the multiplication.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorMultiplyComplexNumberComplexNumber" lang="cs" title="The following example shows how to use the multiply operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorMultiplyComplexNumberComplexNumber" lang="vbnet" title="The following example shows how to use the multiply operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Division(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Overload of the operator / 
            </summary>
            <param name="left">The left hand number.</param>
            <param name="right">The right hand number.</param>
            <returns>The result of the division.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorDivideComplexNumberComplexNumber" lang="cs" title="The following example shows how to use the divide operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorDivideComplexNumberComplexNumber" lang="vbnet" title="The following example shows how to use the divide operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Division(NGenerics.DataStructures.Mathematical.ComplexNumber,System.Double)">
            <summary>
            Overload of the operator /
            </summary>
            <param name="c1">The left hand number.</param>
            <param name="d1">The right hand number.</param>
            <returns>The result of the division.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorDivideComplexNumberDouble" lang="cs" title="The following example shows how to use the divide operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorDivideComplexNumberDouble" lang="vbnet" title="The following example shows how to use the divide operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Multiply(NGenerics.DataStructures.Mathematical.ComplexNumber,System.Double)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="c1">The number to be multiplied with.</param>
            <param name="number">The number.</param>
            <returns>The result of the multiplication.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorMultiplyComplexNumberDouble" lang="cs" title="The following example shows how to use the multiply operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorMultiplyComplexNumberDouble" lang="vbnet" title="The following example shows how to use the multiply operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Multiply(System.Double,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Overload of the operator * 
            </summary>
            <param name="c1">The number to be multiplied with.</param>
            <param name="number">The number.</param>
            <returns>The result of the multiplication.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorMultiplyDoubleComplexNumber" lang="cs" title="The following example shows how to use the multiply operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorMultiplyDoubleComplexNumber" lang="vbnet" title="The following example shows how to use the multiply operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Equality(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Equals operator.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><c>true</c> is <paramref name="left"/> is equal to <paramref name="right"/>; otherwise <c>false</c>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorEquals" lang="cs" title="The following example shows how to use the equals operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorEquals" lang="vbnet" title="The following example shows how to use the equals operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Inequality(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Not Equals operator.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
            <returns><c>true</c> is <paramref name="left"/> is not equal to <paramref name="right"/>; otherwise <c>false</c>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="OperatorNotEquals" lang="cs" title="The following example shows how to use the not equals operator overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="OperatorNotEquals" lang="vbnet" title="The following example shows how to use the not equals operator overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Explicit(NGenerics.DataStructures.Mathematical.ComplexNumber)~System.String">
            <summary>
            Performs an explicit conversion from <see cref="T:NGenerics.DataStructures.Mathematical.ComplexNumber"/> to <see cref="T:System.String"/>.
            </summary>
            <param name="complexNumber">The complex number.</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.op_Implicit(System.Double)~NGenerics.DataStructures.Mathematical.ComplexNumber">
            <summary>
            Performs an implicit conversion from a <see cref="T:System.Double"/> to <see cref="T:NGenerics.DataStructures.Mathematical.ComplexNumber"/>.
            </summary>
            <param name="real">The double number that will form the real part of the complex number..</param>
            <returns>The result of the conversion.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.System#IEquatable{NGenerics#DataStructures#Mathematical#ComplexNumber}#Equals(NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <param name="other">An object to compare with this object.</param>
            <returns>
            true if the current object is equal to the other parameter; otherwise, false.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Clone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.ToString">
            <summary>
            Returns a string representation of the complex number.
            </summary>
            <returns>
            A string representation of the complex number.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="ToString" lang="cs" title="The following example shows how to use the ToString method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="ToString" lang="vbnet" title="The following example shows how to use the ToString method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.Equals(System.Object)">
            <summary>
            Indicates whether this instance and a specified object are equal.
            </summary>
            <param name="obj">Another object to compare to.</param>
            <returns>
            true if obj and this instance are the same type and represent the same value; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="EqualsObject" lang="cs" title="The following example shows how to use the object.Equals overload."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="EqualsObject" lang="vbnet" title="The following example shows how to use the object.Equals overload."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.GetHashCode">
            <summary>
            Returns the hash code for this instance.
            </summary>
            <returns>
            A 32-bit signed integer that is the hash code for this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.MultiplyInternal(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Internal multiplication function for multiplication between complex numbers.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.MultiplyInternal(NGenerics.DataStructures.Mathematical.ComplexNumber,System.Double)">
            <summary>
            Internal multiplication function for multiplication between a complex number and a number.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right side.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.DivideInternal(NGenerics.DataStructures.Mathematical.ComplexNumber,System.Double)">
            <summary>
            Internal division function for dividing a complex number with a number.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right side.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.DivideInternal(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Internal division function for division between complex numbers.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.AddInternal(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Internal addition function for the addition of complex numbers.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.ComplexNumber.SubtractInternal(NGenerics.DataStructures.Mathematical.ComplexNumber,NGenerics.DataStructures.Mathematical.ComplexNumber)">
            <summary>
            Internal subtraction function for the subtraction of complex numbers.
            </summary>
            <param name="left">The left hand side.</param>
            <param name="right">The right hand side.</param>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.Conjugate">
            <summary>
            Returns the complex conjugate.
            </summary>
            <returns>The same number with imaginary part negated.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Conjugate" lang="cs" title="The following example shows how to use the Conjugate property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Conjugate" lang="vbnet" title="The following example shows how to use the Conjugate property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.Modulus">
            <summary>
            Absolute value of a complex number
            </summary>
            <value>The modulus.</value>
            <returns>The result of the Abs operation.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Modulus" lang="cs" title="The following example shows how to use the Modulus property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Modulus" lang="vbnet" title="The following example shows how to use the Modulus property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.Real">
            <summary>
            Gets or sets the real part of the complex number.
            </summary>
            <value>The real part.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Real" lang="cs" title="The following example shows how to use the Real property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Real" lang="vbnet" title="The following example shows how to use the Real property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.Imaginary">
            <summary>
            Gets or sets the imaginary part of the complex number.
            </summary>
            <value>The imaginary part.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Imaginary" lang="cs" title="The following example shows how to use the Imaginary property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Imaginary" lang="vbnet" title="The following example shows how to use the Imaginary property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.AdditiveInverse">
            <summary>
            Computes the additive inverse of the current complex number.
            </summary>
            <returns>The additive inverse of the current complex number.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="AdditiveInverse" lang="cs" title="The following example shows how to use the AdditiveInverse property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="AdditiveInverse" lang="vbnet" title="The following example shows how to use the AdditiveInverse property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.Reciprocal">
            <summary>
            Gets the reciprocal.
            </summary>
            <value>The reciprocal.</value>
            <exception cref="T:System.InvalidOperationException"><see cref="P:NGenerics.DataStructures.Mathematical.ComplexNumber.Real"/> and <see cref="P:NGenerics.DataStructures.Mathematical.ComplexNumber.Imaginary"/> are 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="Reciprocal" lang="cs" title="The following example shows how to use the Reciprocal property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="Reciprocal" lang="vbnet" title="The following example shows how to use the Reciprocal property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.AdditiveIdentity">
            <summary>
            Gets the additive identity.
            </summary>
            <value>The additive identity.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="AdditiveIdentity" lang="cs" title="The following example shows how to use the AdditiveIdentity property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="AdditiveIdentity" lang="vbnet" title="The following example shows how to use the AdditiveIdentity property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.ComplexNumber.MultiplicativeIdentity">
            <summary>
            Gets the multiplicative identity.
            </summary>
            <value>The multiplicative identity.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\ComplexNumberExamples.cs" region="MultiplicativeIdentity" lang="cs" title="The following example shows how to use the MultiplicativeIdentity property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\ComplexNumberExamples.vb" region="MultiplicativeIdentity" lang="vbnet" title="The following example shows how to use the MultiplicativeIdentity property."/>
            </example>
        </member>
        <member name="T:NGenerics.Sorting.InsertionSorter`1">
            <summary>
            A sorter that implements the Insertion sort algorithm.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\InsertionSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\InsertionSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.InsertionSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="M:NGenerics.Sorting.InsertionSorter`1.Insert(System.Collections.Generic.IList{`0},System.Int32,`0,System.Collections.Generic.IComparer{`0})">
            <summary>
            Inserts the specified item into the list in the correct position.
            </summary>
            <param name="list">The list.</param>
            <param name="sortedSequenceLength">Length of the sorted sequence.</param>
            <param name="val">The item to insert.</param>
            <param name="comparer">The comparer to use.</param>
        </member>
        <member name="M:NGenerics.Sorting.InsertionSorter`1.Sort(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0},System.Int32,System.Int32)">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer.</param>
            <param name="start">The start.</param>
            <param name="end">The end.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="list"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="T:NGenerics.DataStructures.General.VisitableList`1">
            <summary>
            An extension of the default List data structure.
            </summary>
            <typeparam name="T">The type of elements in the linked list.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableList`1.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableList`1"/> class.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableList`1.#ctor(System.Collections.Generic.IEnumerable{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableList`1"/> class.
            </summary>
            <param name="collection">The collection whose elements are copied to the new list.</param>
            <exception cref="T:System.ArgumentNullException">collection is null.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="ConstructorCollection" lang="cs" title="The following example shows how to use the collection constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="ConstructorCollection" lang="vbnet" title="The following example shows how to use the collection constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableList`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.VisitableList`1"/> class.
            </summary>
            <param name="capacity">The capacity.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableList`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableList`1.Sort(NGenerics.Sorting.ISorter{`0})">
            <summary>
            Sort the list using the specified sorter.
            </summary>
            <param name="sorter">The <see cref="T:NGenerics.Sorting.ISorter`1"/> to use in the sorting process.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="sorter"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableList`1.Sort(NGenerics.Sorting.ISorter{`0},System.Comparison{`0})">
            <summary>
            Sorts using the specified sorter.
            </summary>
            <param name="sorter">The <see cref="T:NGenerics.Sorting.ISorter`1"/> to use in the sorting process.</param>
            <param name="comparison">The comparison.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="sorter"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparison"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="SortComparison" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="SortComparison" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.VisitableList`1.Sort(NGenerics.Sorting.ISorter{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts using the specified sorter.
            </summary>
            <param name="sorter">The <see cref="T:NGenerics.Sorting.ISorter`1"/> to use in the sorting process.</param>
            <param name="comparer">The comparer.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="sorter"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="comparer"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="SortIComparer" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="SortIComparer" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableList`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableList`1.IsFixedSize">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.IList"/> has a fixed size.
            </summary>
            <returns>true if the <see cref="T:System.Collections.IList"/> has a fixed size; otherwise, false.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.VisitableList`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VisitableListExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VisitableListExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.General.IMatrix`1">
            <summary>
            An interface for a general matrix-type data structure.
            </summary>
            <typeparam name="T">The type of elements in the matrix.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.GetSubMatrix(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Gets the specified sub matrix of the current <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>
            </summary>
            <param name="rowStart">The start row.</param>
            <param name="columnStart">The start column.</param>
            <param name="rowCount">The number of rows.</param>
            <param name="columnCount">The number of columns.</param>
            <returns>A sub-<see cref="T:NGenerics.DataStructures.General.IMatrix`1"/> of the current <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.InterchangeRows(System.Int32,System.Int32)">
            <summary>
            Interchanges (swap) one row with another.
            </summary>
            <param name="firstRow">The index of the first row.</param>
            <param name="secondRow">The index of the second row.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.InterchangeColumns(System.Int32,System.Int32)">
            <summary>
            Interchanges (swap) one column with another.
            </summary>
            <param name="firstColumn">The index of the first column.</param>
            <param name="secondColumn">The index of the second column.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.GetRow(System.Int32)">
            <summary>
            Gets the row at the specified index.
            </summary>
            <param name="rowIndex">Index of the row.</param>
            <returns>An array containing the values of the requested row.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.GetColumn(System.Int32)">
            <summary>
            Gets the column at the specified index.
            </summary>
            <param name="columnIndex">Index of the column.</param>
            <returns>An array containing the values of the requested column.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.AddRows(System.Int32)">
            <summary>
            Adds the specified number of rows to the matrix.
            </summary>
            <param name="rowCount">The number of rows to add.</param>        
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.AddRow">
            <summary>
            Adds a single row to the <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.AddRow(`0[])">
            <summary>
            Adds a single row to the <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>, and populates the values
            accordingly.
            </summary>
            <param name="values">The values to populate the row with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.AddColumns(System.Int32)">
            <summary>
            Adds the specified number of columns to the <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>.
            </summary>
            <param name="columnCount">The number of columns to add.</param>        
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.AddColumn">
            <summary>
            Adds a single column to the <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.AddColumn(`0[])">
            <summary>
            Adds a single column to the <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>, and populates the values
            accordingly.
            </summary>
            <param name="values">The values to populate the column with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.DeleteRow(System.Int32)">
            <summary>
            Deletes the row from the Matrix.
            </summary>
            <param name="row">The index of the row to delete.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.DeleteColumn(System.Int32)">
            <summary>
            Deletes the column from the Matrix.
            </summary>
            <param name="column">The index of the column to delete.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.IMatrix`1.Resize(System.Int32,System.Int32)">
            <summary>
            Resizes the <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/> to the specified size.
            </summary>
            <param name="newNumberOfRows">The new number of rows.</param>
            <param name="newNumberOfColumns">The new number of columns.</param>
        </member>
        <member name="P:NGenerics.DataStructures.General.IMatrix`1.Columns">
            <summary>
            Gets the number of columns in this <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>.
            </summary>
            <value>The columns.</value>
        </member>
        <member name="P:NGenerics.DataStructures.General.IMatrix`1.Rows">
            <summary>
            Gets the number of rows in this <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/>.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.General.IMatrix`1.IsSquare">
            <summary>
            Gets a value indicating whether this <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/> is square.
            </summary>
            <value><c>true</c> if this <see cref="T:NGenerics.DataStructures.General.IMatrix`1"/> is square; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.DataStructures.General.IMatrix`1.Item(System.Int32,System.Int32)">
            <summary>
            Gets or sets the value at the specified index.
            </summary>
        </member>
        <member name="T:NGenerics.Algorithms.MathAlgorithms">
            <summary>
            General math functions.
            </summary>
        </member>
        <member name="M:NGenerics.Algorithms.MathAlgorithms.FindGreatestCommonDivisor(System.Int32,System.Int32)">
            <summary>
            Finds the greatest common divisor.
            </summary>
            <param name="firstNumber">The first number.</param>
            <param name="secondNumber">The second number.</param>
            <returns>The greatest common divisor between the two integers supplied.</returns>
            <exception cref="T:System.ArgumentException"><paramref name="firstNumber"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="secondNumber"/> is less than 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Algorithms\MathExample.cs" region="FindGreatestCommonDivisor" lang="cs" title="The following example shows how to use the FindGreatestCommonDivisor method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Algorithms\MathExample.vb" region="FindGreatestCommonDivisor" lang="vbnet" title="The following example shows how to use the FindGreatestCommonDivisor method."/>
            </example>
        </member>
        <member name="M:NGenerics.Algorithms.MathAlgorithms.GenerateNthFibonacci(System.Int32)">
            <summary>
            Generates the Nth Fibonacci number.
            </summary>
            <param name="upperBoundN">The value of N.</param>
            <returns>The Nth number in the Fibonacci sequence.</returns>        
        </member>
        <member name="M:NGenerics.Algorithms.MathAlgorithms.GenerateFibonacciSequence(System.Int32)">
            <summary>
            Generates the Nth Fibonacci number.
            </summary>
            <param name="upperBoundN">The upper bound N.</param>
            <returns>A series of Fibonacci numbers until the <paramref name="upperBoundN"/>.</returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="upperBoundN"/> is less than 0.</exception>
        </member>
        <member name="M:NGenerics.Algorithms.MathAlgorithms.Hypotenuse(System.Double,System.Double)">
            <summary>
            Calculates the Hypotenuse of a triangle.
            </summary>
            <param name="a">One of the shorter sides of the triangle.</param>
            <param name="b">One of the shorter sides of the triangle.</param>
            <returns>The Hypotenuse of a triangle.</returns>
        </member>
        <member name="T:NGenerics.Visitors.PreOrderVisitor`1">
            <summary>
            A visitor that visits objects only in pre order.
            </summary>
            <typeparam name="T">The type of objects to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.PreOrderVisitor`1.#ctor(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.PreOrderVisitor`1"/> class.
            </summary>
            <param name="visitor">The visitor to use when visiting the object.</param>
        </member>
        <member name="M:NGenerics.Visitors.PreOrderVisitor`1.VisitInOrder(`0)">
            <summary>
            Visits the object in order.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="M:NGenerics.Visitors.PreOrderVisitor`1.VisitPostOrder(`0)">
            <summary>
            Visits the object in post order.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="T:NGenerics.Visitors.KeyTrackingVisitor`2">
            <summary>
            A visitor that tracks (stores) keys from KeyValuePAirs in the order they were visited.
            </summary>
            <typeparam name="TKey">The type of the keys for the items to be visited.</typeparam>
            <typeparam name="TValue">The type of the values for the items to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.KeyTrackingVisitor`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.TrackingVisitor`1"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.Visitors.KeyTrackingVisitor`2.Visit(System.Collections.Generic.KeyValuePair{`0,`1})">
            <summary>
            Visits the specified object.
            </summary>
            <param name="obj">The object to visit.</param>
        </member>
        <member name="P:NGenerics.Visitors.KeyTrackingVisitor`2.TrackingList">
            <summary>
            Gets the tracking list.
            </summary>
            <value>The tracking list.</value>
        </member>
        <member name="P:NGenerics.Visitors.KeyTrackingVisitor`2.HasCompleted">
            <summary>
            Gets a value indicating whether this instance is done performing it's work..
            </summary>
            <value><c>true</c> if this instance is done; otherwise, <c>false</c>.</value>
            <returns><c>true</c> if this instance is done; otherwise, <c>false</c>.</returns>
        </member>
        <member name="T:NGenerics.DataStructures.Queues.PriorityQueueType">
            <summary>
            Specifies the Priority Queue type (min or max).
            </summary>
        </member>
        <member name="F:NGenerics.DataStructures.Queues.PriorityQueueType.Minimum">
            <summary>
            Specify a Minimum <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/>.
            </summary>
        </member>
        <member name="F:NGenerics.DataStructures.Queues.PriorityQueueType.Maximum">
            <summary>
            Specify a Maximum <see cref="T:NGenerics.DataStructures.Queues.PriorityQueue`1"/>.
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.QRDecomposition">
            <summary>
            QR Decomposition.
            </summary>
            <remarks>
            For an qr.Rows-by-qr.Columns matrix A with qr.Rows >= qr.Columns, the QR decomposition is an qr.Rows-by-qr.Columns
            orthogonal matrix Q and an qr.Columns-by-qr.Columns upper triangular matrix R so that
            A = Q*R.
            </remarks>
            <remarks>
            The QR decompostion always exists, even if the matrix does not have
            full rank, so the constructor will never fail.  The primary use of the
            QR decomposition is in the least squares solution of nonsquare systems
            of simultaneous linear equations.  This will fail if isFullRank()
            returns false.
            </remarks>
            <remarks>
            Adapted from the JAMA package : http://math.nist.gov/javanumerics/jama/
            </remarks>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.QRDecomposition.#ctor(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.QRDecomposition"/> class.
            </summary>
            <param name="matrix">A rectangular matrix.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.QRDecomposition.Solve(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Least squares solution of A*X = B
            </summary>
            <param name="b">A Matrix with as many rows as A and any number of columns.</param>
            <returns>Matrix X that minimizes the two norm of Q*R*X-B.</returns>
            <exception cref="T:System.ArgumentException">Matrix row dimensions must agree.</exception>
            <exception cref="T:System.ArgumentException">Matrix is rank deficient.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.QRDecomposition.Decompose(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Decomposes the specified matrix, using a QR decomposition.
            </summary>
            <param name="matrix">The matrix to decompose.</param>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.QRDecomposition.IsFullRank">
            <summary>
            Gets a value indicating whether the matrix is full rank.
            </summary>
            <value><c>true</c> if R, and hence A, has full rank, else <c>false</c>..</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.QRDecomposition.H">
            <summary>
            Gets the Householder vectors.
            </summary>
            <value>Lower trapezoidal matrix whose columns define the reflections.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.QRDecomposition.R">
            <summary>
            Gets the the upper triangular factor.
            </summary>
            <value>The upper triangular factor.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.QRDecomposition.Q">
            <summary>
            Generate and return the (economy-sized) orthogonal factor.
            </summary>
            <value>The (economy-sized) orthogonal factor.</value>
        </member>
        <member name="T:NGenerics.Sorting.OddEvenTransportSorter`1">
            <summary>
            An OddEvenTransport sorter.
            </summary>
            <typeparam name="T">The type of the elements to be sorted.</typeparam>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\Sorting\OddEvenTransportSorterExamples.cs" region="Sort" lang="cs" title="The following example shows how to use the Sort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\Sorting\OddEvenTransportSorterExamples.vb" region="Sort" lang="vbnet" title="The following example shows how to use the Sort method."/>
            </example>
        </member>
        <member name="M:NGenerics.Sorting.OddEvenTransportSorter`1.SortItems(System.Collections.Generic.IList{`0},System.Collections.Generic.IComparer{`0})">
            <summary>
            Sorts the specified list.
            </summary>
            <param name="list">The list.</param>
            <param name="comparer">The comparer to use in comparing items.</param>
        </member>
        <member name="T:NGenerics.Misc.Resources">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.CapacityCanNotBeLessThanOne">
            <summary>
              Looks up a localized string similar to Capacity can not be less than 1..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.ColumnAndRowCountBiggerThan0">
            <summary>
              Looks up a localized string similar to Column and row count must be larger than 0..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.ComplexReciprocalNonZero">
            <summary>
              Looks up a localized string similar to Finding the Reciprocal of the complex number is only defined for non-zero (real, imaginary) numbers..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.DequeIsEmpty">
            <summary>
              Looks up a localized string similar to The deque is empty..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.EdgeAlreadyExists">
            <summary>
              Looks up a localized string similar to The edge between the vertices specified already exists..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.GraphHasCycles">
            <summary>
              Looks up a localized string similar to A cycle was found in the graph..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.GraphIsEmpty">
            <summary>
              Looks up a localized string similar to The graph is empty..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.HeapIsEmpty">
            <summary>
              Looks up a localized string similar to The heap is empty..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.IncompatibleMatricesSameSize">
            <summary>
              Looks up a localized string similar to Incompatible matrices.  For this operation the matrices should be of the same size..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.IncompatibleMatricesTimes">
            <summary>
              Looks up a localized string similar to Incompatible matrices for this operation.  The rows of the input matrix must be equal to the columns of this matrix..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.InitialValuesNull">
            <summary>
              Looks up a localized string similar to Initial values can not be null..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.InvalidProbability">
            <summary>
              Looks up a localized string similar to The probability must be between 0.1 and 0.9.
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.ItemAlreadyInList">
            <summary>
              Looks up a localized string similar to The item is already in the list..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.ItemAlreadyInTree">
            <summary>
              Looks up a localized string similar to The item is already contained in the tree..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.ItemNotInUniverse">
            <summary>
              Looks up a localized string similar to The item is not in the universe of the set..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.LowerBoundLargerThanZero">
            <summary>
              Looks up a localized string similar to The lower bound must be larger or equal to zero..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixDeleteOnlyColumn">
            <summary>
              Looks up a localized string similar to The matrix has only one column left, which can not be deleted..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixDeleteOnlyRow">
            <summary>
              Looks up a localized string similar to The matrix has only one row left, which can not be deleted..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixIsNull">
            <summary>
              Looks up a localized string similar to Matrix is null..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixIsRankDeficient">
            <summary>
              Looks up a localized string similar to Matrix is rank deficient..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixIsSingular">
            <summary>
              Looks up a localized string similar to This operation is only valid on non-singular matrices..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixMustBeSquare">
            <summary>
              Looks up a localized string similar to The operation is only valid on a square matrix..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixMustNotBeSingular">
            <summary>
              Looks up a localized string similar to The operation is not valid for a singular matrix..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MatrixRowCountDiffers">
            <summary>
              Looks up a localized string similar to The current operation is only valid for matrices with equal number of rows..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MaximumLevelBiggerThan0">
            <summary>
              Looks up a localized string similar to The maximum level must be bigger than 0..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.MismatchedEdgeType">
            <summary>
              Looks up a localized string similar to The type of edge must be the same as the type of graph (Undirected / Directed).
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.NotEnoughSpaceInTargetArray">
            <summary>
              Looks up a localized string similar to Not enough space in the target array..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.NumberOfValuesDoNotAgreeWithNumberOfColumns">
            <summary>
              Looks up a localized string similar to The number of values can not be greater than the number of columns..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.NumberOfValuesDoNotAgreeWithNumberOfRows">
            <summary>
              Looks up a localized string similar to The number of values can not be greater than the number of rows..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.NumbersGreaterThanZero">
            <summary>
              Looks up a localized string similar to Numbers provided must be greater than zero..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.OnlyAddPositiveAmount">
            <summary>
              Looks up a localized string similar to You can only add 1 or more items..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.OperationOnlyValidForDirectedGraph">
            <summary>
              Looks up a localized string similar to The current operation is only valid for a directed graph..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.QueueIsEmpty">
            <summary>
              Looks up a localized string similar to The Queue is empty..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.RowsOrColumnsInvalid">
            <summary>
              Looks up a localized string similar to Rows and columns must be nonnegative values..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.SearchTreeIsEmpty">
            <summary>
              Looks up a localized string similar to The search tree is empty..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.SetIndexMustBePositive">
            <summary>
              Looks up a localized string similar to The index of an item in a set can not be negative..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.StackIsEmpty">
            <summary>
              Looks up a localized string similar to The stack is empty..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.StringCannotBeEmpty">
            <summary>
              Looks up a localized string similar to String cannot be empty..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.UndirectedGraphStrongConnectedness">
            <summary>
              Looks up a localized string similar to This operation is only valid on a directed graph. For undirected graphs, rather test for weak connectedness..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.UniverseNotTheSame">
            <summary>
              Looks up a localized string similar to The operation requested can only be done if the sets share the same universe..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.UpperBoundMustBeLargerThanLowerBound">
            <summary>
              Looks up a localized string similar to The upper bound must be larger than the lower bound specified..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.VertexAlreadyExists">
            <summary>
              Looks up a localized string similar to The vertex already exists in the graph..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.VertexCouldNotBeFound">
            <summary>
              Looks up a localized string similar to The vertex specified could not be found in the graph..
            </summary>
        </member>
        <member name="P:NGenerics.Misc.Resources.VertexNotPartOfEdge">
            <summary>
              Looks up a localized string similar to The vertex specified does not form part of this edge..
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.General.Graph`1">
            <summary>
            An implementation of a Graph data structure.  The graph can be either
            directed or undirected.
            </summary>
            <typeparam name="T">The type of elements in the graph.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.#ctor(System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Graph`1"/> class.
            </summary>
            <param name="isDirected">if set to <c>true</c> [is directed].</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the Constructor method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the Constructor method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.System#Collections#Generic#ICollection{T}#Add(`0)">
            <summary>
            Adds a vertex to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The vertex data to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="AddVertex" lang="cs" title="The following example shows how to use the AddVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="AddVertex" lang="vbnet" title="The following example shows how to use the AddVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.System#Collections#Generic#ICollection{T}#Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-<paramref name="arrayIndex"/> is equal to or greater than the length of <paramref name="array"/>.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from <paramref name="arrayIndex"/> to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Remove" lang="cs" title="The following example shows how to use the Remove method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Remove" lang="vbnet" title="The following example shows how to use the Remove method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.Clear">
            <summary>
            Clears all the objects in this instance.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.DepthFirstTraversal(NGenerics.Visitors.OrderedVisitor{NGenerics.DataStructures.General.Vertex{`0}},NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Performs a depth-first traversal, starting at the specified vertex.
            </summary>
            <param name="visitor">The visitor to use.  Note that in-order is not applicable in a graph.</param>
            <param name="startVertex">The vertex to start from.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="startVertex"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="DepthFirstTraversal" lang="cs" title="The following example shows how to use the DepthFirstTraversal method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="DepthFirstTraversal" lang="vbnet" title="The following example shows how to use the DepthFirstTraversal method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.IsCyclic">
            <summary>
            Determines whether this graph is cyclic (contains cycles).
            </summary>
            <returns>
            	<c>true</c> if this instance contains cycles; otherwise, <c>false</c>.
            </returns>
            <remarks>The topological sort algorithm is only valid for a directed, acyclic (cycle free) graph.</remarks>
            <remarks>In order to detect cycles, a toplogical sort of the graph is computed.</remarks>
            <exception cref="T:System.InvalidOperationException">The graph contains cycles.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsCyclic" lang="cs" title="The following example shows how to use the IsCyclic method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsCyclic" lang="vbnet" title="The following example shows how to use the IsCyclic method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.TopologicalSort">
            <summary>
            Computes the topological sort of the graph.
            </summary>
            <exception cref="T:System.ArgumentException">The graph is not directed.</exception>
            <remarks>This operation is only defined on a directed graph.</remarks>
            <remarks>The topological sort algorithm is only valid for a directed, acyclic (cycle free) graph.</remarks>
            <returns>A list of vertices in topological order.</returns>
            <exception cref="T:System.InvalidOperationException">The graph contains cycles.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="TopologicalSort" lang="cs" title="The following example shows how to use the TopologicalSort method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="TopologicalSort" lang="vbnet" title="The following example shows how to use the TopologicalSort method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.TopologicalSortTraversal(NGenerics.Visitors.IVisitor{NGenerics.DataStructures.General.Vertex{`0}})">
            <summary>
            Visits very vertex in the graph (provided it doesn't have cycles) in topological order.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentException">The graph is not directed.</exception>
            <remarks>The topological sort algorithm is only valid for a directed, acyclic (cycle free) graph.</remarks>
            <exception cref="T:System.InvalidOperationException">The graph contains cycles.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="TopologicalSortTraversal" lang="cs" title="The following example shows how to use the TopologicalSortTraversal method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="TopologicalSortTraversal" lang="vbnet" title="The following example shows how to use the TopologicalSortTraversal method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.BreadthFirstTraversal(NGenerics.Visitors.IVisitor{NGenerics.DataStructures.General.Vertex{`0}},NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Performs a breadth-first traversal from the specified vertex.
            </summary>
            <param name="visitor">The visitor to use.</param>
            <param name="startVertex">The vertex to start from.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="startVertex"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="BreadthFirstTraversal" lang="cs" title="The following example shows how to use the BreadthFirstTraversal method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="BreadthFirstTraversal" lang="vbnet" title="The following example shows how to use the BreadthFirstTraversal method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.RemoveVertex(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Removes the specified vertex from the graph.
            </summary>
            <param name="vertex">The vertex to be removed.</param>
            <returns>A value indicating whether the vertex was found (and removed) in the graph.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="vertex"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="RemoveVertex" lang="cs" title="The following example shows how to use the RemoveVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="RemoveVertex" lang="vbnet" title="The following example shows how to use the RemoveVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.RemoveVertex(`0)">
            <summary>
            Removes the vertex with the specified value from the graph.
            </summary>
            <param name="item">The item.</param>
            <returns>A value indicating whether a vertex with the value specified was found (and removed) in the graph.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="RemoveVertexFromValue" lang="cs" title="The following example shows how to use the RemoveVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="RemoveVertexFromValue" lang="vbnet" title="The following example shows how to use the RemoveVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.ContainsVertex(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Determines whether this graph contains the specified vertex.
            </summary>
            <param name="vertex">The vertex.</param>
            <returns>
            	<c>true</c> if this instance contains the specified vertex; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="ContainsVertex" lang="cs" title="The following example shows how to use the ContainsVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="ContainsVertex" lang="vbnet" title="The following example shows how to use the ContainsVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.ContainsVertex(`0)">
            <summary>
            Determines whether the specified item is contained in the graph.
            </summary>
            <param name="item">The item.</param>
            <returns>
            	<c>true</c> if the specified item contains vertex; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="ContainsVertexValue" lang="cs" title="The following example shows how to use the ContainsVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="ContainsVertexValue" lang="vbnet" title="The following example shows how to use the ContainsVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.RemoveEdge(NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Removes the edge specified from the graph.
            </summary>
            <param name="edge">The edge to be removed.</param>
            <returns>A value indicating whether the edge specified was found (and removed) from the graph.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="RemoveEdge" lang="cs" title="The following example shows how to use the RemoveEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="RemoveEdge" lang="vbnet" title="The following example shows how to use the RemoveEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.RemoveEdge(NGenerics.DataStructures.General.Vertex{`0},NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Removes the edge specified from the graph.
            </summary>
            <param name="from">The from vertex.</param>
            <param name="to">The to vertex.</param>
            <returns>A value indicating whether the edge between the two vertices supplied was found (and removed) from the graph.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="from"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="to"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="RemoveEdgeFromVertices" lang="cs" title="The following example shows how to use the RemoveEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="RemoveEdgeFromVertices" lang="vbnet" title="The following example shows how to use the RemoveEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.AddEdge(NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Adds the specified edge to the graph.
            </summary>
            <param name="edge">The edge to add.</param>
            <exception cref="T:System.ArgumentException"><see cref="P:NGenerics.DataStructures.General.Edge`1.IsDirected"/> of <paramref name="edge"/> doe not equal <see cref="P:NGenerics.DataStructures.General.Edge`1.IsDirected"/> of the current instance.</exception>
            <exception cref="T:System.ArgumentException">Either <see cref="P:NGenerics.DataStructures.General.Edge`1.FromVertex"/> or <see cref="P:NGenerics.DataStructures.General.Edge`1.ToVertex"/> of <paramref name="edge"/> cannot be found the current instance.</exception>
            <exception cref="T:System.ArgumentException"><see cref="P:NGenerics.DataStructures.General.Edge`1.ToVertex"/> of <paramref name="edge"/> already exists on the current instance.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="AddEdge" lang="cs" title="The following example shows how to use the AddEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="AddEdge" lang="vbnet" title="The following example shows how to use the AddEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.AddVertex(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Adds the vertex specified to the graph.
            </summary>
            <param name="vertex">The vertex to add.</param>
            <exception cref="T:System.ArgumentException"><paramref name="vertex"/> already exists in the current instance.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="AddVertex" lang="cs" title="The following example shows how to use the AddVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="AddVertex" lang="vbnet" title="The following example shows how to use the AddVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.AddVertex(`0)">
            <summary>
            Adds a vertex to the graph with the specified data item.
            </summary>
            <param name="item">The item to store in the vertex.</param>
            <returns>The vertex created and added to the graph.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="AddVertexFromValue" lang="cs" title="The following example shows how to use the AddVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="AddVertexFromValue" lang="vbnet" title="The following example shows how to use the AddVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.AddEdge(NGenerics.DataStructures.General.Vertex{`0},NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Adds the edge to the graph.
            </summary>
            <param name="from">The from vertex.</param>
            <param name="to">The to vertex.</param>
            <returns>The newly created edge.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="AddEdgeFromVertices" lang="cs" title="The following example shows how to use the AddEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="AddEdgeFromVertices" lang="vbnet" title="The following example shows how to use the AddEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.AddEdge(NGenerics.DataStructures.General.Vertex{`0},NGenerics.DataStructures.General.Vertex{`0},System.Double)">
            <summary>
            Adds the edge to the graph.
            </summary>
            <param name="from">The from vertex.</param>
            <param name="to">The to vertex.</param>
            <param name="weight">The weight of this edge.</param>
            <returns>The newly created edge.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="AddWeightedEdgeFromVertices" lang="cs" title="The following example shows how to use the AddEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="AddWeightedEdgeFromVertices" lang="vbnet" title="The following example shows how to use the AddEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.IsWeaklyConnected">
            <summary>
            Gets a value indicating whether this graph is weakly connected.
            </summary>
            <returns><c>true</c> if this graph is weakly connected; otherwise, <c>false</c>.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.General.Graph`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsWeaklyConnected" lang="cs" title="The following example shows how to use the IsWeaklyConnected method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsWeaklyConnected" lang="vbnet" title="The following example shows how to use the IsWeaklyConnected method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.IsStronglyConnected">
            <summary>
            Gets a value indicating whether this graph is weakly connected.
            </summary>
            <returns><c>true</c> if this graph is weakly connected; otherwise, <c>false</c>.</returns>
            <exception cref="T:System.InvalidOperationException"><see cref="P:NGenerics.DataStructures.General.Graph`1.IsDirected"/> is <c>true</c>.</exception>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.General.Graph`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsStronglyConnected" lang="cs" title="The following example shows how to use the IsStronglyConnected method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsStronglyConnected" lang="vbnet" title="The following example shows how to use the IsStronglyConnected method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.ContainsEdge(`0,`0)">
            <summary>
            Determines whether the vertex with the specified from value has an edge to a vertex with the specified to value.
            </summary>
            <param name="fromValue">The from vertex value.</param>
            <param name="toValue">The to vertex value.</param>
            <returns>
            	<c>true</c> if the vertex with the specified from value has an edge to a vertex with the specified to value; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="ContainsEdgeFromVerticeValues" lang="cs" title="The following example shows how to use the ContainsEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="ContainsEdgeFromVerticeValues" lang="vbnet" title="The following example shows how to use the ContainsEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.ContainsEdge(NGenerics.DataStructures.General.Vertex{`0},NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Determines whether the specified vertex has a edge to the to vertex.
            </summary>
            <param name="from">The from vertex.</param>
            <param name="to">The to vertex.</param>
            <returns>
            	<c>true</c> if the specified from vertex has an edge to the to vertex; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="ContainsEdgeFromVertices" lang="cs" title="The following example shows how to use the ContainsEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="ContainsEdgeFromVertices" lang="vbnet" title="The following example shows how to use the ContainsEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.ContainsEdge(NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Determines whether the specified edge is contained in this graph.
            </summary>
            <param name="edge">The edge to look for.</param>
            <returns>
            	<c>true</c> if the specified edge is contained in the graph; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="ContainsEdge" lang="cs" title="The following example shows how to use the ContainsEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="ContainsEdge" lang="vbnet" title="The following example shows how to use the ContainsEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.GetEdge(NGenerics.DataStructures.General.Vertex{`0},NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Gets the edge specified by the two vertices.
            </summary>
            <param name="from">The from vertex.</param>
            <param name="to">The two vertex.</param>
            <returns>The edge between the two specified vertices if found.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="GetEdge" lang="cs" title="The following example shows how to use the GetEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="GetEdge" lang="vbnet" title="The following example shows how to use the GetEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.GetEdge(`0,`0)">
            <summary>
            Gets the edge specified by the two vertices.
            </summary>
            <param name="fromVertexValue">The from vertex value.</param>
            <param name="toVertexValue">The to vertex value.</param>
            <returns>The edge formed by vertices with the specified values if found, otherwise null.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="GetEdgeFromVertexValue" lang="cs" title="The following example shows how to use the GetEdge method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="GetEdgeFromVertexValue" lang="vbnet" title="The following example shows how to use the GetEdge method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.GetVertex(`0)">
            <summary>
            Gets the vertex with the specified value.
            </summary>
            <param name="vertexValue">The vertex value to look for.</param>
            <returns>The vertex with the specified value.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="GetVertex" lang="cs" title="The following example shows how to use the GetVertex method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="GetVertex" lang="vbnet" title="The following example shows how to use the GetVertex method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.FindVertices(System.Predicate{`0})">
            <summary>
            Find all vertices matching the predicate supplied.
            </summary>
            <returns>All vertices matching <paramref name="predicate"/>.</returns>
            <param name="predicate">The predicate (condition) to use.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="predicate"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="FindVertices" lang="cs" title="The following example shows how to use the FindVertices method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="FindVertices" lang="vbnet" title="The following example shows how to use the FindVertices method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.TopologicalSortTraversalInternal(NGenerics.Visitors.IVisitor{NGenerics.DataStructures.General.Vertex{`0}})">
            <summary>
            Allows a visitor to visit each vertex in topological order.
            </summary>
            <param name="visitor">The visitor.</param>
            <returns>The number of items visited.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.DepthFirstTraversal(NGenerics.Visitors.OrderedVisitor{NGenerics.DataStructures.General.Vertex{`0}},NGenerics.DataStructures.General.Vertex{`0},System.Collections.Generic.List{NGenerics.DataStructures.General.Vertex{`0}}@)">
            <summary>
            Performs a depth-first traversal.
            </summary>
            <param name="visitor">The visitor.</param>
            <param name="startVertex">The start vertex.</param>
            <param name="visitedVertices">The visited vertices.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.AddEdgeToVertices(NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Adds the edge to the vertices in the edge.
            </summary>
            <param name="edge">The edge to add.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.CheckEdgeNotNull(NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Checks that the edge is not null.
            </summary>
            <param name="edge">The edge to check.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="edge"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.GetAnyVertex">
            <summary>
            Gets any vertex.
            </summary>
            <returns>Any vertex.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.Graph`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Gets the enumerator.
            </summary>
            <returns>A enumerator to enumerate though the collection.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.System#Collections#Generic#ICollection{T}#Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.ICollection"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.ICollection"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.IsDirected">
            <summary>
            Gets a value indicating whether this instance is directed.
            </summary>
            <value>
            	<c>true</c> if this instance is directed; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsDirected" lang="cs" title="The following example shows how to use the IsDirected property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsDirected" lang="vbnet" title="The following example shows how to use the IsDirected property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.Vertices">
            <summary>
            Gets the vertices contained in this graph.
            </summary>
            <value>The vertices contained in this graph.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Vertices" lang="cs" title="The following example shows how to use the Vertices property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Vertices" lang="vbnet" title="The following example shows how to use the Vertices property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.Edges">
            <summary>
            Gets the edges contained in this graph.
            </summary>
            <value>The edges contained in this graph.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="Edges" lang="cs" title="The following example shows how to use the Edges property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="Edges" lang="vbnet" title="The following example shows how to use the Edges property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Graph`1.IsReadOnly">
            <summary>
            Gets a value indicating whether this instance is read only.
            </summary>
            <value>
            	<c>true</c> if this instance is read only; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\GraphExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\GraphExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.LUDecomposition">
            <summary>
              LU decomposition of a rectangular Matrix.
            </summary>
            <remarks>
              For an m-by-n Matrix <c>A</c> with m >= n, the LU decomposition is an m-by-n
              unit lower triangular Matrix <c>L</c>, an n-by-n upper triangular Matrix <c>U</c>,
              and a permutation vector <c>piv</c> of length m so that <c>A(piv)=L*U</c>.
              If m &lt; n, then <c>L</c> is m-by-m and <c>U</c> is m-by-n.
            </remarks>
            <remarks>
            Adapted from the JAMA package : http://math.nist.gov/javanumerics/jama/
            </remarks>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.LUDecomposition.#ctor(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.LUDecomposition"/> class.
            </summary>
            <param name="matrix">The matrix.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.LUDecomposition.Determinant">
            <summary>
            Calculates the determinant.
            </summary>
            <returns>The determinant.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.LUDecomposition.Solve(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Solve A*X = B
            </summary>
            <param name="b">A Matrix with as many rows as A and any number of columns.</param>
            <returns>The Matrix X, so that A * X = B.</returns>
            <exception cref="T:System.ArgumentException">Matrix row dimensions must agree.
            </exception>
            <exception cref="T:System.ArgumentException">Matrix is singular.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.LUDecomposition.SolveInternal(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Solves the equation for the specified matrices.
            </summary>
            <param name="B">The result (B).</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.LUDecomposition.Decompose(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Decomposes the specified matrix using a LU decomposition.
            </summary>
            <param name="matrix">The matrix to decompose.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.LUDecomposition.GetLowerTriangularFactor">
            <summary>
            Gets the lower triangular factor.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.LUDecomposition.GetUpperTriangularFactor">
            <summary>
            Gets the upper triangular factor.
            </summary>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.LUDecomposition.NonSingular">
            <summary>
            Gets a value indicating whether the matrix is non singular.
            </summary>
            <value><c>true</c> if non singular; otherwise, <c>false</c>.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.LUDecomposition.LowerTriangularFactor">
            <summary>
            Gets the lower triangular factor L, with A=LU.
            </summary>
            <value>The lower triangular factor.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.LUDecomposition.UpperTriangularFactor">
            <summary>
            Gets the upper triangular factor U, with A=LU.
            </summary>
            <value>The upper triangular factor.</value>
        </member>
        <member name="T:NGenerics.DataStructures.General.Association`2">
            <summary>
            The Association performs the same function as a KeyValuePair, but allows the Key and 
            Value members to be written to.
            </summary>
            <typeparam name="TKey">The type of the key for the association.</typeparam>
            <typeparam name="TValue">The type of the value for the association.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.Association`2.#ctor(`0,`1)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Association`2"/> class.
            </summary>
            <param name="key">The key.</param>
            <param name="value">The value.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\AssociationExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\AssociationExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Association`2.ToKeyValuePair">
            <summary>
            Construct a KeyValuePair object from the current values.
            </summary>
            <returns>A key value pair representation of this <see cref="T:NGenerics.DataStructures.General.Association`2"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\AssociationExamples.cs" region="ToKeyValuePair" lang="cs" title="The following example shows how to use the ToKeyValuePair method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\AssociationExamples.vb" region="ToKeyValuePair" lang="vbnet" title="The following example shows how to use the ToKeyValuePair method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Association`2.Key">
            <summary>
            Gets the key.
            </summary>
            <value>The key.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\AssociationExamples.cs" region="Key" lang="cs" title="The following example shows how to use the Key property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\AssociationExamples.vb" region="Key" lang="vbnet" title="The following example shows how to use the Key property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Association`2.Value">
            <summary>
            Gets the value.
            </summary>
            <value>The value.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\AssociationExamples.cs" region="Value" lang="cs" title="The following example shows how to use the Value property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\AssociationExamples.vb" region="Value" lang="vbnet" title="The following example shows how to use the Value property."/>
            </example>
        </member>
        <member name="T:NGenerics.DataStructures.General.Vertex`1">
            <summary>
            A class representing a vertex in a graph.
            </summary>
            <typeparam name="T">The type contained in the vertex.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.#ctor(`0)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Vertex`1"/> class.
            The weight is 0 by default.
            </summary>
            <param name="data">The data contained in the vertex.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.#ctor(`0,System.Double)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.Vertex`1"/> class.
            </summary>
            <param name="data">The data contained in the vertex</param>
            <param name="weight">The weight of the vertex.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="ConstructorWithWeight" lang="cs" title="The following example shows how to use the constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="ConstructorWithWeight" lang="vbnet" title="The following example shows how to use the constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.HasEmanatingEdgeTo(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Determines whether this vertex has an emanating edge to the specified vertex.
            </summary>
            <param name="toVertex">The vertex to test connectivity to.</param>
            <returns>
            	<c>true</c> if this vertex has an emanating edge to the specified vertex; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="HasEmanatingEdgeTo" lang="cs" title="The following example shows how to use the HasEmanatingEdgeTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="HasEmanatingEdgeTo" lang="vbnet" title="The following example shows how to use the HasEmanatingEdgeTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.HasIncidentEdgeWith(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Determines whether [has incident edge with] [the specified from vertex].
            </summary>
            <param name="fromVertex">From vertex.</param>
            <returns>
            	<c>true</c> if [has incident edge with] [the specified from vertex]; otherwise, <c>false</c>.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="HasIncidentEdgeWith" lang="cs" title="The following example shows how to use the HasIncidentEdgeWith method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="HasIncidentEdgeWith" lang="vbnet" title="The following example shows how to use the HasIncidentEdgeWith method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.GetEmanatingEdgeTo(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Gets the emanating edge to the specified vertex.
            </summary>
            <param name="toVertex">To to vertex.</param>
            <returns>The emanating edge to the vertex specified if found, otherwise null.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="GetEmanatingEdgeTo" lang="cs" title="The following example shows how to use the GetEmanatingEdgeTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="GetEmanatingEdgeTo" lang="vbnet" title="The following example shows how to use the GetEmanatingEdgeTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.GetIncidentEdgeWith(NGenerics.DataStructures.General.Vertex{`0})">
            <summary>
            Gets the incident edge to the specified vertex.
            </summary>
            <param name="toVertex">The to vertex.</param>
            <returns>The incident edge to the vertex specified if found, otherwise null.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="GetIncidentEdgeWith" lang="cs" title="The following example shows how to use the GetIncidentEdgeWith method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="GetIncidentEdgeWith" lang="vbnet" title="The following example shows how to use the GetIncidentEdgeWith method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.RemoveEdge(NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Removes the edge specified from the vertex.
            </summary>
            <param name="edge">The edge to be removed.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.Vertex`1.AddEdge(NGenerics.DataStructures.General.Edge{`0})">
            <summary>
            Adds the edge to the vertex.
            </summary>
            <param name="edge">The edge to add.</param>
        </member>
        <member name="P:NGenerics.DataStructures.General.Vertex`1.Weight">
            <summary>
            Gets or sets the weight.
            </summary>
            <value>The weight.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="Weight" lang="cs" title="The following example shows how to use the Weight property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="Weight" lang="vbnet" title="The following example shows how to use the Weight property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Vertex`1.Data">
            <summary>
            Gets or sets the data.
            </summary>
            <value>The data contained in the vertex.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="Data" lang="cs" title="The following example shows how to use the Data property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="Data" lang="vbnet" title="The following example shows how to use the Data property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Vertex`1.Degree">
            <summary>
            Gets the degree of this vertex (the number of emanating edges).
            </summary>
            <value>The degree.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="Degree" lang="cs" title="The following example shows how to use the Degree property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="Degree" lang="vbnet" title="The following example shows how to use the Degree property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Vertex`1.IncidentEdges">
            <summary>
            Gets the edges incident on this vertex.
            </summary>
            <value>The edges incident on this vertex.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="IncidentEdges" lang="cs" title="The following example shows how to use the IncidentEdges property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="IncidentEdges" lang="vbnet" title="The following example shows how to use the IncidentEdges property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Vertex`1.EmanatingEdges">
            <summary>
            Gets the emanating edges on this vertex.
            </summary>
            <value>The emanating edges on this vertex.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\VertexExamples.cs" region="EmanatingEdges" lang="cs" title="The following example shows how to use the EmanatingEdges property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\VertexExamples.vb" region="EmanatingEdges" lang="vbnet" title="The following example shows how to use the EmanatingEdges property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.Vertex`1.IncomingEdgeCount">
            <summary>
            Gets count of the incoming edges on this vertex.
            </summary>
            <value>The number of incoming edges resident on the vertex.</value>
        </member>
        <member name="T:NGenerics.DataStructures.General.ObjectMatrix`1">
            <summary>
            A data structure representing a matrix of objects.
            </summary>
            <typeparam name="T">The type of elements in the object matrix.</typeparam>
        </member>
        <member name="F:NGenerics.DataStructures.General.ObjectMatrix`1.noOfColumns">
            <summary>
            The number of columns in the matrix.
            </summary>
        </member>
        <member name="F:NGenerics.DataStructures.General.ObjectMatrix`1.noOfRows">
            <summary>
            The number of rows in the matrix.
            </summary>
        </member>
        <member name="F:NGenerics.DataStructures.General.ObjectMatrix`1.data">
            <summary>
            The data matrix.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> class.
            </summary>
            <param name="rows">The rows.</param>
            <param name="columns">The columns.</param>
            <exception cref="T:System.ArgumentException"><paramref name="columns"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="rows"/> is less than 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.#ctor(System.Int32,System.Int32,`0[])">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> class.
            </summary>
            <param name="rows">The rows.</param>
            <param name="columns">The columns.</param>
            <param name="data">The data.</param>
            <exception cref="T:System.ArgumentException"><paramref name="columns"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="rows"/> is less than 0.</exception>
            <example>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.NGenerics#DataStructures#General#IMatrix{T}#GetSubMatrix(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Gets the sub matrix.
            </summary>
            <param name="rowStart">The row start.</param>
            <param name="noOfColumnStart">The no of columnStart.</param>
            <param name="rowCount">The row count.</param>
            <param name="columnCount">The column count.</param>
            <returns>The sub-matrix of the current matrix.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.System#Collections#Generic#ICollection{T}#Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.Clear">
            <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="arrayIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="array"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException"><paramref name="array"/> is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.System#Collections#Generic#ICollection{T}#Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="visitor"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.GetSubMatrix(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Gets the sub matrix.
            </summary>
            <param name="rowStart">The row start.</param>
            <param name="columnStart">The column start.</param>
            <param name="rowCount">The row count.</param>
            <param name="columnCount">The column count.</param>
            <returns>The sub matrix of the current matrix.</returns>
            <exception cref="T:System.ArgumentException"><paramref name="rowCount"/> is less than or equal to 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="columnCount"/> is less than or equal to 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="rowStart"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="columnStart"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="rowStart"/> plus <paramref name="rowCount"/> is greater that <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="columnStart"/> plus <paramref name="columnCount"/> is greater that <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="GetSubMatrix" lang="cs" title="The following example shows how to use the GetSubMatrix method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="GetSubMatrix" lang="vbnet" title="The following example shows how to use the GetSubMatrix method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.InterchangeRows(System.Int32,System.Int32)">
            <summary>
            Interchanges (swap) one row with another.
            </summary>
            <param name="firstRow">The index of the first row.</param>
            <param name="secondRow">The index of the second row.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="firstRow"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="firstRow"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="secondRow"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="secondRow"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="InterchangeRows" lang="cs" title="The following example shows how to use the InterchangeRows method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="InterchangeRows" lang="vbnet" title="The following example shows how to use the InterchangeRows method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.InterchangeColumns(System.Int32,System.Int32)">
            <summary>
            Interchanges (swap) one column with another.
            </summary>
            <param name="firstColumn">The index of the first column.</param>
            <param name="secondColumn">The index of the second column.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="firstColumn"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="secondColumn"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="firstColumn"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="secondColumn"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="InterchangeColumns" lang="cs" title="The following example shows how to use the InterchangeColumns method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="InterchangeColumns" lang="vbnet" title="The following example shows how to use the InterchangeColumns method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.GetRow(System.Int32)">
            <summary>
            Gets the row at the specified index.
            </summary>
            <param name="rowIndex">Index of the row.</param>
            <returns>
            An array containing the values of the requested row.
            </returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="rowIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="rowIndex"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="GetRow" lang="cs" title="The following example shows how to use the GetRow method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="GetRow" lang="vbnet" title="The following example shows how to use the GetRow method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.GetColumn(System.Int32)">
            <summary>
            Gets the column at the specified index.
            </summary>
            <param name="columnIndex">Index of the column.</param>
            <returns>
            An array containing the values of the requested column.
            </returns>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="columnIndex"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="columnIndex"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="GetColumn" lang="cs" title="The following example shows how to use the GetColumn method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="GetColumn" lang="vbnet" title="The following example shows how to use the GetColumn method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.AddRows(System.Int32)">
            <summary>
            Adds the specified number of rows to the matrix.
            </summary>
            <param name="rowCount">The number of rows to add.</param>      
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="rowCount"/> is less than or equal to 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="AddRows" lang="cs" title="The following example shows how to use the AddRows method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="AddRows" lang="vbnet" title="The following example shows how to use the AddRows method."/>
            </example>  
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.AddRow">
            <summary>
            Adds a single row to the matrix.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="AddRow" lang="cs" title="The following example shows how to use the AddRow method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="AddRow" lang="vbnet" title="The following example shows how to use the AddRow method."/>
            </example>  
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.AddColumn(`0[])">
            <summary>
            Adds a single row to the matrix, and populates the values
            accordingly.
            </summary>
            <param name="values">The values to populate the row with.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="values"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The length of <paramref name="values"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="AddColumnValues" lang="cs" title="The following example shows how to use the AddColumn method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="AddColumnValues" lang="vbnet" title="The following example shows how to use the AddColumn method."/>
            </example>  
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.AddColumns(System.Int32)">
            <summary>
            Adds the specified number of rows to the matrix.
            </summary>
            <param name="columnCount">The number of rows to add.</param>   
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="columnCount"/> is less than or equal to 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="AddColumns" lang="cs" title="The following example shows how to use the AddColumns method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="AddColumns" lang="vbnet" title="The following example shows how to use the AddColumns method."/>
            </example>      
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.AddColumn">
            <summary>
            Adds a single row to the matrix.
            </summary>   
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="AddColumn" lang="cs" title="The following example shows how to use the AddColumn method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="AddColumn" lang="vbnet" title="The following example shows how to use the AddColumn method."/>
            </example>      
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.AddRow(`0[])">
            <summary>
            Adds a single row to the matrix, and populates the values
            accordingly.
            </summary>
            <param name="values">The values to populate the row with.</param>
            <exception cref="T:System.ArgumentNullException"><paramref name="values"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The length of <paramref name="values"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="AddRowValues" lang="cs" title="The following example shows how to use the AddRow method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="AddRowValues" lang="vbnet" title="The following example shows how to use the AddRow method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.Resize(System.Int32,System.Int32)">
            <summary>
            Resizes the matrix to the specified size.
            </summary>
            <param name="newNumberOfRows">The new number of rows.</param>
            <param name="newNumberOfColumns">The new number of columns.</param>
            <exception cref="T:System.ArgumentException"><paramref name="newNumberOfColumns"/> is less than or equal to 0.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="newNumberOfRows"/> is less than or equal to 0.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Resize" lang="cs" title="The following example shows how to use the Resize method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Resize" lang="vbnet" title="The following example shows how to use the Resize method."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.DeleteRow(System.Int32)">
            <summary>
            Deletes the row from the Matrix.
            </summary>
            <param name="row">The index of the row to delete.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="DeleteRow" lang="cs" title="The following example shows how to use the DeleteRow method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="DeleteRow" lang="vbnet" title="The following example shows how to use the DeleteRow method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.DeleteColumn(System.Int32)">
            <summary>
            Deletes the column from the Matrix.
            </summary>
            <param name="column">The index of the column to delete.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="DeleteColumn" lang="cs" title="The following example shows how to use the DeleteColumn method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="DeleteColumn" lang="vbnet" title="The following example shows how to use the DeleteColumn method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.GetValue(System.Int32,System.Int32)">
            <summary>
            Gets the value at the specified indexes.
            </summary>
            <param name="row">The row index.</param>
            <param name="column">The column index.</param>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.SetValue(System.Int32,System.Int32,`0)">
            <summary>
            Gets the value at the specified indexes.
            </summary>
            <param name="row">The row index.</param>
            <param name="column">The column index.</param>
            <param name="value">The value.</param>
            <returns></returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.GetOffset(System.Int32,System.Int32)">
            <summary>
            Gets the offset.
            </summary>
            <param name="row">The row.</param>
            <param name="column">The column.</param>
            <returns>The offset of <paramref name="row"/> and <paramref name="row"/>.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.CheckIndexValid(System.Int32,System.Int32)">
            <summary>
            Checks whether the index supplied is valid.
            </summary>
            <param name="i">The i.</param>
            <param name="j">The j.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="i"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="i"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="j"/> is less than 0.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="j"/> is greater than <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/>.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.General.ObjectMatrix`1.CopyData(`0[],System.Int32)">
            <summary>
            Copies the data.
            </summary>
            <param name="newData">The new data.</param>
            <param name="newColumnCount">The new column count.</param>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.IsSquare">
            <summary>
            Gets a value indicating whether this matrix is square.
            </summary>
            <remarks>
            A <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/> is square if <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/> equals <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/>.
            </remarks>
            <value><c>true</c> if this matrix is square; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="IsSquare" lang="cs" title="The following example shows how to use the IsSquare property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="IsSquare" lang="vbnet" title="The following example shows how to use the IsSquare property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.Item(System.Int32,System.Int32)">
            <summary>
            Gets or sets the value at the specified row and column.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Index" lang="cs" title="The following example shows how to use the Index property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Index" lang="vbnet" title="The following example shows how to use the Index property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value>
            	<c>true</c> if this collection is empty; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
            </summary>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns">
            <summary>
            Gets the number of columns in this <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/>.
            </summary>
            <value>The noOfColumns.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Columns" lang="cs" title="The following example shows how to use the Columns property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Columns" lang="vbnet" title="The following example shows how to use the Columns property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows">
            <summary>
            Gets the number of rows in this <see cref="T:NGenerics.DataStructures.General.ObjectMatrix`1"/>.
            </summary>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\General\ObjectMatrixExamples.cs" region="Rows" lang="cs" title="The following example shows how to use the Rows property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\General\ObjectMatrixExamples.vb" region="Rows" lang="vbnet" title="The following example shows how to use the Rows property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.General.ObjectMatrix`1.Data">
            <summary>
            Gets the data.
            </summary>
            <value>The data.</value>
        </member>
        <member name="T:NGenerics.DataStructures.Trees.BinarySearchTree`2">
            <summary>
            An implementation of a Binary Search Tree data structure.
            </summary>
            <typeparam name="TKey">The type of the keys in the tree.</typeparam>
            <typeparam name="TValue">The type of the values in the tree.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTree`2.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTree`2"/> class.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTree`2.#ctor(System.Collections.Generic.IComparer{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Trees.BinarySearchTree`2"/> class.
            </summary>
            <param name="comparer">The comparer to use when comparing items.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTree`2.FindNode(`0,NGenerics.DataStructures.Trees.BinaryTree{NGenerics.DataStructures.General.Association{`0,`1}}@)">
            <summary>
            Finds the node containing the specified data item.
            </summary>
            <param name="key">The key.</param>
            <param name="parent">The parent node of the item found.</param>
            <returns>The node in the tree with the specified key if found, otherwise null.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTree`2.FindMaximumNode(NGenerics.DataStructures.Trees.BinaryTree{NGenerics.DataStructures.General.Association{`0,`1}},NGenerics.DataStructures.Trees.BinaryTree{NGenerics.DataStructures.General.Association{`0,`1}}@)">
            <summary>
            Finds the maximum node.
            </summary>
            <param name="startNode">The start node.</param>
            <param name="parent">The parent of the node found.</param>
            <returns>The maximum node underneath the node specified.  If the node specified is a leaf node, it is returned.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTree`2.AddItem(`0,`1)">
            <summary>
            Adds an element with the provided key and value to the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The object to use as the key of the element to add.</param>
            <param name="value">The object to use as the value of the element to add.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentException">An element with the same key already exists in the <see cref="T:System.Collections.Generic.IDictionary`2"/>.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Trees.BinarySearchTree`2.RemoveItem(`0)">
            <summary>
            Removes the element with the specified key from the <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </summary>
            <param name="key">The key of the element to remove.</param>
            <returns>
            true if the element is successfully removed; otherwise, false.  This method also returns false if key was not found in the original <see cref="T:System.Collections.Generic.IDictionary`2"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.IDictionary`2"/> is read-only.</exception>
            <exception cref="T:System.ArgumentNullException">key is null.</exception>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.Matrix">
            <summary>
            A Matrix data structure corresponding to the mathematical matrix used in linear algebra.	
            </summary>
        </member>
        <member name="T:NGenerics.DataStructures.Mathematical.IMathematicalMatrix">
            <summary>
            An interface for a Mathematical matrix as in Linear Algebra.
            </summary>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Inverse">
            <summary>
            Inverts this matrix.
            </summary>
            <returns>The inverted representation of this instance.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Determinant">
            <summary>
            Calculates the determinant of the matrix.
            </summary>
            <returns>The determinant of the matrix.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Negate">
            <summary>
            Negates (multiply all entries with -1) this matrix.
            </summary>
            <returns>The negated representation of the matrix.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Subtract(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Subtracts the matrices according to the linear algebra operator -.
            </summary>
            <param name="matrix">The result of the subtraction.</param>
            <returns>The result of the minus operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Add(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Adds to matrices according to the linear algebra operator +.
            </summary>
            <param name="matrix">The result of the addition.</param>
            <returns>The result of the plus operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Multiply(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Times the matrices according to the linear algebra operator *.
            </summary>
            <param name="matrix">The matrix.</param>
            <returns>The result of the times operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Multiply(System.Double)">
            <summary>
            Times the matrices according to the linear algebra operator *.
            </summary>
            <param name="number">The number to multiply this matrix with.</param>
            <returns>The result of the times operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.MultiplyRow(System.Int32,System.Double)">
            <summary>
            Multiplies the row with the specified number.
            </summary>
            <param name="row">The index of the row to multiply.</param>
            <param name="number">The number to multiply each entry in the row with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.MultiplyColumn(System.Int32,System.Double)">
            <summary>
            Multiplies the column with the specified number.
            </summary>
            <param name="column">The index of the column to multiply.</param>
            <param name="number">The number to multiply each entry in the column with.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Transpose">
            <summary>
            Transposes the matrix.
            </summary>
            <returns>The transposed representation of this matrix.</returns>
            <value>The transposed matrix.</value>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Minor(System.Int32,System.Int32)">
            <summary>
            Calculate the minor of the entry specified.
            </summary>
            <param name="row">The row index.</param>
            <param name="column">The column index.</param>
            <returns>The minor of the entry specified.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Adjoint">
            <summary>
            Calculates the adjoint (the transpose of the matrix formed by the cofactors of the elements of determinants) of the matrix.
            </summary>
            <returns>The adjoint of the matrix.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.Concatenate(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Concatenates two matrices in horizontal manner.
            </summary>
            <param name="rightMatrix">The right hand matrix to concatenate to the left hand matrix.</param>
            <returns>The result of the concatenate operation.</returns>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.IsSymmetric">
            <summary>
            Gets a value indicating whether this matrix instance is symmetric.
            </summary>
            <value>
            	<c>true</c> if this matrix instance is symmetric; otherwise, <c>false</c>.
            </value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.IMathematicalMatrix.IsSingular">
            <summary>
            Verifies whether the matrix is singular or not.
            </summary>
            <value>A boolean value indicating whether the matrix is singular or not.</value>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.#ctor(System.Int32,System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> class.
            </summary>
            <remarks>
            Some of the members have been adapted from the JAMA package : http://math.nist.gov/javanumerics/jama/, which is in the public domain.
            </remarks>
            <param name="rows">The number of rows in the matrix.</param>
            <param name="columns">The number of columns in the matrix.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default contructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default contructor."/>
            </example> 
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.#ctor(System.Int32,System.Int32,System.Double[])">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Mathematical.Matrix"/> class.
            </summary>
            <param name="rows">The rows.</param>
            <param name="columns">The columns.</param>
            <param name="data">The data.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Multiply(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Times the matrices according to the linear algebra operator *.
            </summary>
            <param name="matrix">The result of the times operation.</param>
            <returns>The result of the times operation.</returns>
            <exception cref="T:System.ArgumentException"><see cref="P:NGenerics.DataStructures.General.IMatrix`1.Rows"/> is greater than <see cref="P:NGenerics.DataStructures.General.IMatrix`1.Rows"/> <paramref name="matrix"/>.</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Multiply(System.Double)">
            <summary>
            Times the matrices according to the linear algebra operator *.
            </summary>
            <param name="number">The number to multiple.</param>
            <returns>The result of the times operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Add(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Adds to matrices according to the linear algebra operator +.
            </summary>
            <param name="matrix">The result of the addition.</param>
            <returns>The result of the plus operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Negate">
            <summary>
            Negates (multiply all entries with -1) this matrix.
            </summary>
            <returns>
            The negated representation of the matrix.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Inverse">
            <summary>
            Inverts this matrix.
            </summary>
            <returns>
            The inverted representation of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Minor(System.Int32,System.Int32)">
            <summary>
            Calculate the minor of the entry specified.
            </summary>
            <param name="row">The row index.</param>
            <param name="column">The column index.</param>
            <returns>
            The matrix without the row and column specified.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Adjoint">
            <summary>
            Calculates the adjoint (the transpose of the matrix formed by the cofactors of the elements of determinants) of the matrix.
            </summary>
            <returns>The adjoint of the matrix.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Concatenate(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Concatenates two matrices in horizontal manner.
            </summary>
            <param name="rightMatrix">The right hand matrix to concatenate to the left hand matrix.</param>
            <returns>The result of the concatenate operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="rightMatrix"/> is null.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="rightMatrix"/> does not have the same amount of rows as this matrix.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Subtract(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Subtracts the matrices according to the linear algebra operator -.
            </summary>
            <param name="matrix">The result of the subtraction.</param>
            <returns>The result of the minus operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.NGenerics#DataStructures#Mathematical#IMathematicalMatrix#Transpose">
            <summary>
            Transposes the matrix.
            </summary>
            <returns>
            The transposed representation of this matrix.
            </returns>
            <value>The transposed matrix.</value>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Minor(System.Int32,System.Int32)">
            <summary>
            Calculate the minor of the entry specified.
            </summary>
            <param name="row">The row index.</param>
            <param name="column">The column index.</param>
            <returns>The matrix without the row and column specified.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Minor" lang="cs" title="The following example shows how to use the Minor method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Minor" lang="vbnet" title="The following example shows how to use the Minor method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Determinant">
            <summary>
            Gets the determinant.
            </summary>
            <returns>The determinant.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Determinant" lang="cs" title="The following example shows how to use the Determinant method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Determinant" lang="vbnet" title="The following example shows how to use the Determinant method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Adjoint">
            <summary>
            Calculates the adjoint (the transpose of the matrix formed by the cofactors of the elements of determinants) of the matrix.
            </summary>
            <returns>The Adjoint of the current matrix.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Adjoint" lang="cs" title="The following example shows how to use the Adjoint method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Adjoint" lang="vbnet" title="The following example shows how to use the Adjoint method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Multiply(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Times the matrices according to the linear algebra operator *.
            </summary>
            <param name="matrix">The matrix to multiply this matrix with.</param>
            <returns>The result of the times operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/> of the current instance do not equal the <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/> of <paramref name="matrix"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="MultiplyMatrixMatrix" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="MultiplyMatrixMatrix" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Multiply(System.Double)">
            <summary>
            Times the matrices according to the linear algebra operator *.
            </summary>
            <param name="number">The number to multiply this matrix with.</param>
            <returns>The result of the times operation.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="MultiplyMatrixDouble" lang="cs" title="The following example shows how to use the Multiply method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="MultiplyMatrixDouble" lang="vbnet" title="The following example shows how to use the Multiply method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Add(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Adds to matrices according to the linear algebra operator +.
            </summary>
            <param name="matrix">The matrix to add to this matrix.</param>
            <returns>The result of the plus operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/> of the current instance do not equal the <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/> of <paramref name="matrix"/>.</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/> of the current instance do not equal the <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/> of <paramref name="matrix"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Add" lang="cs" title="The following example shows how to use the Add method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Add" lang="vbnet" title="The following example shows how to use the Add method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Negate">
            <summary>
            Negate (multiply all entries with -1) this instance.
            </summary>
            <returns>An negated representation of the current matrix.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Negate" lang="cs" title="The following example shows how to use the Negate method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Negate" lang="vbnet" title="The following example shows how to use the Negate method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Subtract(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Subtracts the matrices according to the linear algebra operator -.
            </summary>
            <param name="matrix">The matrix to subtract from this matrix.</param>
            <returns>The result of the subtraction.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="matrix"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/> of the current instance do not equal the <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Columns"/> of <paramref name="matrix"/>.</exception>
            <exception cref="T:System.ArgumentException">The <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/> of the current instance do not equal the <see cref="P:NGenerics.DataStructures.General.ObjectMatrix`1.Rows"/> of <paramref name="matrix"/>.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Subtract" lang="cs" title="The following example shows how to use the Subtract method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Subtract" lang="vbnet" title="The following example shows how to use the Subtract method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Transpose">
            <summary>
            Transposes the matrix.
            </summary>
            <returns>The transposed matrix.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Transpose" lang="cs" title="The following example shows how to use the Transpose method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Transpose" lang="vbnet" title="The following example shows how to use the Transpose method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Inverse">
            <summary>
            Inverts this instance.
            </summary>
            <returns>An inverted representation of the current matrix.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Inverse" lang="cs" title="The following example shows how to use the Inverse method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Inverse" lang="vbnet" title="The following example shows how to use the Inverse method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Diagonal(System.Int32,System.Int32,System.Double)">
            <summary>
            Constructs a diagonal matrix of the specified size with the specified value.
            </summary>
            <param name="rows">The number of rows.</param>
            <param name="columns">The number of columns.</param>
            <param name="value">The value of diagonal elements.</param>
            <returns>An diagonal matrix of the specified size.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.IdentityMatrix(System.Int32,System.Int32)">
            <summary>
            Constructs an identity matrix of the specified size.
            </summary>
            <param name="rows">The number of rows.</param>
            <param name="columns">The number of columns.</param>
            <returns>An identity matrix of the specified size.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Solve(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Calculates the LHS solution vetor if the matrix is square or the least squares solution otherwise.
            </summary>
            <param name="rightHandSide">The right hand side.</param>
            <returns>Returns the LHS solution vector if the matrix is square or the least squares solution otherwise.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.MultiplyRow(System.Int32,System.Double)">
            <summary>
            Multiplies the row with the specified number.
            </summary>
            <param name="row">The index of the row to multiply.</param>
            <param name="number">The number to multiply each entry in the row with.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="MultiplyRow" lang="cs" title="The following example shows how to use the MultiplyRow method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="MultiplyRow" lang="vbnet" title="The following example shows how to use the MultiplyRow method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.MultiplyColumn(System.Int32,System.Double)">
            <summary>
            Multiplies the column with the specified number.
            </summary>
            <param name="column">The index of the column to multiply.</param>
            <param name="number">The number to multiply each entry in the column with.</param>
            <exception cref="T:System.ArgumentOutOfRangeException"><paramref name="column"/> is negative or larger than the number of columns in the matrix.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="MultiplyColumn" lang="cs" title="The following example shows how to use the MultiplyColumn method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="MultiplyColumn" lang="vbnet" title="The following example shows how to use the MultiplyColumn method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Concatenate(NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Concatenates two matrices in horizontal manner.
            </summary>
            <param name="rightMatrix">The right hand matrix to concatenate to the left hand matrix.</param>
            <returns>The result of the concatenate operation.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="rightMatrix"/> is null.</exception>
            <exception cref="T:System.ArgumentException"><paramref name="rightMatrix"/> does not have the same amount of rows as this matrix.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Concatenate" lang="cs" title="The following example shows how to use the Concatenate method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Concatenate" lang="vbnet" title="The following example shows how to use the Concatenate method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Clone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Clone" lang="cs" title="The following example shows how to use the Clone method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Clone" lang="vbnet" title="The following example shows how to use the Clone method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.GetSubMatrix(System.Int32[],System.Int32,System.Int32)">
            <summary>
            Gets the sub matrix specified with the row indices, the start
            column, and the end column.
            </summary>
            <param name="rows">The row indices.</param>
            <param name="columnStart">The column start.</param>
            <param name="columnEnd">The column end.</param>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.AddInternal(NGenerics.DataStructures.General.IMatrix{System.Double},NGenerics.DataStructures.General.IMatrix{System.Double})">
            <summary>
            Internal addition function.
            </summary>
            <param name="leftMatrix">The left matrix.</param>
            <param name="rightMatrix">The right matrix.</param>
            <returns>The result of the addition operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.ConcatenateInternal(NGenerics.DataStructures.General.IMatrix{System.Double},NGenerics.DataStructures.General.IMatrix{System.Double})">
            <summary>
            Internal method for concatenation.
            </summary>
            <param name="leftMatrix">The left hand side matrix.</param>
            <param name="rightMatrix">The right hand side matrix.</param>
            <returns>The result of the concatenation operation.</returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.op_Addition(NGenerics.DataStructures.Mathematical.Matrix,NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Overload of the operator + as in linear algebra.
            </summary>
            <param name="m1">The left hand matrix.</param>
            <param name="m2">The right hand matrix.</param>
            <returns>The result of the addition.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="m1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="m2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="OperatorPlus" lang="cs" title="The following example shows how to use the plus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="OperatorPlus" lang="vbnet" title="The following example shows how to use the plus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.op_Subtraction(NGenerics.DataStructures.Mathematical.Matrix,NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Overload of the operator - as in linear algebra.
            </summary>
            <param name="m1">The left hand matrix.</param>
            <param name="m2">The right hand matrix.</param>
            <returns>The result of the subtraction.</returns>
            <exception cref="T:System.ArgumentNullException"><paramref name="m1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="m2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="OperatorMinus" lang="cs" title="The following example shows how to use the minus operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="OperatorMinus" lang="vbnet" title="The following example shows how to use the minus operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.op_Multiply(NGenerics.DataStructures.Mathematical.Matrix,NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Overload of the operator * as in linear algebra.
            </summary>
            <param name="m1">The left hand matrix.</param>
            <param name="m2">The right hand matrix.</param>
            <returns>The result of the multiplication.</returns>     
            <exception cref="T:System.ArgumentNullException"><paramref name="m1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <exception cref="T:System.ArgumentNullException"><paramref name="m2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>   
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="OperatorMultiplyMatrixMatrix" lang="cs" title="The following example shows how to use the mutiply operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="OperatorMultiplyMatrixMatrix" lang="vbnet" title="The following example shows how to use the mutiply operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.op_Multiply(System.Double,NGenerics.DataStructures.Mathematical.Matrix)">
            <summary>
            Overload of the operator * as in linear algebra.
            </summary>
            <param name="number">The number.</param>
            <param name="m2">The right hand matrix.</param>
            <returns>The result of the multiplication.</returns> 
            <exception cref="T:System.ArgumentNullException"><paramref name="m2"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="OperatorMultiplyMatrixDouble" lang="cs" title="The following example shows how to use the multiply operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="OperatorMultiplyMatrixDouble" lang="vbnet" title="The following example shows how to use the multiply operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.op_Multiply(NGenerics.DataStructures.Mathematical.Matrix,System.Double)">
            <summary>
            Overload of the operator * as in linear algebra.
            </summary>
            <param name="m1">The number to be multiplied with.</param>
            <param name="number">The number.</param>
            <returns>The result of the multiplication.</returns>  
            <exception cref="T:System.ArgumentNullException"><paramref name="m1"/> is a null reference (<c>Nothing</c> in Visual Basic).</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="OperatorMultiplyMatrixDouble" lang="cs" title="The following example shows how to use the multiply operator."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="OperatorMultiplyMatrixDouble" lang="vbnet" title="The following example shows how to use the multiply operator."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.System#Collections#Generic#ICollection{System#Double}#Add(System.Double)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.System#Collections#Generic#ICollection{System#Double}#Remove(System.Double)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            Never returns. Always throws <see cref="T:System.NotSupportedException"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">Always.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.GetSubMatrix(System.Int32,System.Int32,System.Int32,System.Int32)">
            <summary>
            Gets the sub matrix.
            </summary>
            <param name="rowStart">The row start.</param>
            <param name="columnStart">The column start.</param>
            <param name="rowCount">The row count.</param>
            <param name="columnCount">The column count.</param>
            <returns>The sub matrix of the current matrix.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="GetSubMatrix" lang="cs" title="The following example shows how to use the GetSubMatrix method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="GetSubMatrix" lang="vbnet" title="The following example shows how to use the GetSubMatrix method."/>
            </example>           
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.System#ICloneable#Clone">
            <summary>
            Creates a new object that is a copy of the current instance.
            </summary>
            <returns>
            A new object that is a copy of this instance.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Mathematical.Matrix.Equals(NGenerics.DataStructures.Mathematical.IMathematicalMatrix)">
            <summary>
            Indicates whether the current object is equal to another object of the same type.
            </summary>
            <param name="other">An object to compare with this object.</param>
            <returns>
            true if the current object is equal to the other parameter; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="Equals" lang="cs" title="The following example shows how to use the Equals method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="Equals" lang="vbnet" title="The following example shows how to use the Equals method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Matrix.IsSymmetric">
            <summary>
            Gets a value indicating whether this matrix instance is symmetric.
            </summary>
            <value>
            	<c>true</c> if this matrix instance is symmetric; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="IsSymmetric" lang="cs" title="The following example shows how to use the IsSymmetric property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="IsSymmetric" lang="vbnet" title="The following example shows how to use the IsSymmetric property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Matrix.IsSingular">
            <summary>
            Verifies whether the matrix is singular or not.
            </summary>
            <value>
            A boolean value indicating whether the matrix is singular or not.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Mathematical\MatrixExamples.cs" region="IsSingular" lang="cs" title="The following example shows how to use the IsSingular property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Mathematical\MatrixExamples.vb" region="IsSingular" lang="vbnet" title="The following example shows how to use the IsSingular property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Matrix.Trace">
            <summary>
            Calculates the trace of the current matrix.
            </summary>
            <value>The sum of the diagonal elements of the matrix.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Matrix.OneNorm">
            <summary>
            Calculates the One Norm for the matrix.
            </summary>
            <value>The maximum column sum.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Matrix.InfinityNorm">
            <summary>
            Calculates infinity norm for the matrix.
            </summary>
            <value>The maximum row sum.</value>
        </member>
        <member name="P:NGenerics.DataStructures.Mathematical.Matrix.FrobeniusNorm">
            <summary>
            Calculates the Frobenius Norm for the matrix.
            </summary>
            <value>The square root of sum of squares of all elements.</value>
        </member>
        <member name="T:NGenerics.Comparers.AssociationKeyComparer`2">
            <summary>
            A comparer for comparing keys using the Association class.
            </summary>
            <typeparam name="TKey"></typeparam>
            <typeparam name="TValue"></typeparam>
        </member>
        <member name="M:NGenerics.Comparers.AssociationKeyComparer`2.Compare(NGenerics.DataStructures.General.Association{`0,`1},NGenerics.DataStructures.General.Association{`0,`1})">
            <summary>
            Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other.
            </summary>
            <param name="x">The first object to compare.</param>
            <param name="y">The second object to compare.</param>
            <returns>
            	<para>A <see cref="T:System.Int32"/> containing a value that reflects the sort order of <paramref name="x"/> as compared to <paramref name="y"/>. The following table defines the conditions under which the returned value is a negative number, zero, or a positive number.</para>
              <list type="table">
                <listheader>
                  <term>Value</term>
                  <description>Condition</description>
                </listheader>
                <item>
                  <term>Any negative number</term>
                  <description><paramref name="x"/> &lt; <paramref name="y"/>.</description>
                </item>
                <item>
                  <term>Zero</term>
                  <description><paramref name="x"/> == <paramref name="y"/>.</description>
                </item>
            		<item>
            			<term>Any positive number</term>
            			<description><paramref name="x"/> &gt; <paramref name="y"/>.</description>
            		</item>
            	</list>
            </returns>
        </member>
        <member name="T:NGenerics.Visitors.InOrderVisitor`1">
            <summary>
            An in order implementation of the <see cref="T:NGenerics.Visitors.OrderedVisitor`1"/> class.
            </summary>
            <typeparam name="T">The type of objects to be visited.</typeparam>
        </member>
        <member name="M:NGenerics.Visitors.InOrderVisitor`1.#ctor(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.Visitors.InOrderVisitor`1"/> class.
            </summary>
            <param name="visitor">The visitor.</param>
        </member>
        <member name="M:NGenerics.Visitors.InOrderVisitor`1.VisitPostOrder(`0)">
            <summary>
            Visits the object in post order.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="M:NGenerics.Visitors.InOrderVisitor`1.VisitPreOrder(`0)">
            <summary>
            Visits the object in pre order.
            </summary>
            <param name="obj">The obj.</param>
        </member>
        <member name="T:NGenerics.DataStructures.Queues.CircularQueue`1">
            <summary>
            An implementation of a Circular Queue.
            </summary>
            <typeparam name="T">The type of the elements in the queue.</typeparam>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:NGenerics.DataStructures.Queues.CircularQueue`1"/> class.
            </summary>
            <param name="capacity">The initial capacity of the list.</param>
            <exception cref="T:System.ArgumentException"><paramref name="capacity"/> is less than 1.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Constructor" lang="cs" title="The following example shows how to use the default constructor."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Constructor" lang="vbnet" title="The following example shows how to use the default constructor."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.Enqueue(`0)">
            <summary>
            Enqueues the item at the back of the queue.
            </summary>
            <param name="item">The item.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Enqueue" lang="cs" title="The following example shows how to use the Enqueue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Enqueue" lang="vbnet" title="The following example shows how to use the Enqueue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.Dequeue">
            <summary>
            Dequeues the item at the front of the queue.
            </summary>
            <returns>The item at the front of the queue.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Dequeue" lang="cs" title="The following example shows how to use the Dequeue method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Dequeue" lang="vbnet" title="The following example shows how to use the Dequeue method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.Peek">
            <summary>
            Peeks at the item in the front of the queue, without removing it.
            </summary>
            <returns>The item at the front of the queue.</returns>
            <exception cref="T:System.InvalidOperationException">The <see cref="T:NGenerics.DataStructures.Queues.Deque`1"/> is empty.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Peek" lang="cs" title="The following example shows how to use the Peek method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Peek" lang="vbnet" title="The following example shows how to use the Peek method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.System#Collections#Generic#ICollection{T}#Add(`0)">
            <summary>
            Adds an item to the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to add to the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.Clear">
            <summary>
            Removes all items from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only. </exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Clear" lang="cs" title="The following example shows how to use the Clear property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Clear" lang="vbnet" title="The following example shows how to use the Clear property."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.Contains(`0)">
            <summary>
            Determines whether the <see cref="T:System.Collections.Generic.ICollection`1"/> contains a specific value.
            </summary>
            <param name="item">The object to locate in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item is found in the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Contains" lang="cs" title="The following example shows how to use the Contains method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Contains" lang="vbnet" title="The following example shows how to use the Contains method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.CopyTo(`0[],System.Int32)">
            <summary>
            Copies the elements of the <see cref="T:System.Collections.Generic.ICollection`1"/> to an <see cref="T:System.Array"/>, starting at a particular <see cref="T:System.Array"/> index.
            </summary>
            <param name="array">The one-dimensional <see cref="T:System.Array"/> that is the destination of the elements copied from <see cref="T:System.Collections.Generic.ICollection`1"/>. The <see cref="T:System.Array"/> must have zero-based indexing.</param>
            <param name="arrayIndex">The zero-based index in array at which copying begins.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">arrayIndex is less than 0.</exception>
            <exception cref="T:System.ArgumentNullException">array is null.</exception>
            <exception cref="T:System.ArgumentException">array is multidimensional.-or-arrayIndex is equal to or greater than the length of array.-or-The number of elements in the source <see cref="T:System.Collections.Generic.ICollection`1"/> is greater than the available space from arrayIndex to the end of the destination array.-or-Type T cannot be cast automatically to the type of the destination array.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="CopyTo" lang="cs" title="The following example shows how to use the CopyTo method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="CopyTo" lang="vbnet" title="The following example shows how to use the CopyTo method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.Remove(`0)">
            <summary>
            Removes the first occurrence of a specific object from the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <param name="item">The object to remove from the <see cref="T:System.Collections.Generic.ICollection`1"/>.</param>
            <returns>
            true if item was successfully removed from the <see cref="T:System.Collections.Generic.ICollection`1"/>; otherwise, false. This method also returns false if item is not found in the original <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </returns>
            <exception cref="T:System.NotSupportedException">The <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.</exception>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Remove" lang="cs" title="The following example shows how to use the Remove method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Remove" lang="vbnet" title="The following example shows how to use the Remove method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.GetEnumerator">
            <summary>
            Returns an enumerator that iterates through the collection.
            </summary>
            <returns>
            A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
            </returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="GetEnumerator" lang="cs" title="The following example shows how to use the GetEnumerator method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="GetEnumerator" lang="vbnet" title="The following example shows how to use the GetEnumerator method."/>
            </example>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an enumerator that iterates through a collection.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
            </returns>
        </member>
        <member name="M:NGenerics.DataStructures.Queues.CircularQueue`1.Accept(NGenerics.Visitors.IVisitor{`0})">
            <summary>
            Accepts the specified visitor.
            </summary>
            <param name="visitor">The visitor.</param>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Accept" lang="cs" title="The following example shows how to use the Accept method."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Accept" lang="vbnet" title="The following example shows how to use the Accept method."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.CircularQueue`1.IsFixedSize">
            <summary>
            Gets a value indicating whether this instance is of a fixed size.
            </summary>
            <value>
            	<c>true</c> if this instance is fixed size; otherwise, <c>false</c>.
            </value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="IsFixedSize" lang="cs" title="The following example shows how to use the IsFixedSize property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="IsFixedSize" lang="vbnet" title="The following example shows how to use the IsFixedSize property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.CircularQueue`1.IsEmpty">
            <summary>
            Gets a value indicating whether this collection is empty.
            </summary>
            <value><c>true</c> if this collection is empty; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="IsEmpty" lang="cs" title="The following example shows how to use the IsEmpty property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="IsEmpty" lang="vbnet" title="The following example shows how to use the IsEmpty property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.CircularQueue`1.IsFull">
            <summary>
            Gets a value indicating whether this collection is full.
            </summary>
            <value><c>true</c> if this collection is full; otherwise, <c>false</c>.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="IsFull" lang="cs" title="The following example shows how to use the IsFull property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="IsFull" lang="vbnet" title="The following example shows how to use the IsFull property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.CircularQueue`1.Count">
            <summary>
            Gets the number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.
            </summary>
            <returns>The number of elements contained in the <see cref="T:System.Collections.Generic.ICollection`1"/>.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Count" lang="cs" title="The following example shows how to use the Count property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Count" lang="vbnet" title="The following example shows how to use the Count property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.CircularQueue`1.IsReadOnly">
            <summary>
            Gets a value indicating whether the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only.
            </summary>
            <returns>true if the <see cref="T:System.Collections.Generic.ICollection`1"/> is read-only; otherwise, false.</returns>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="IsReadOnly" lang="cs" title="The following example shows how to use the IsReadOnly property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="IsReadOnly" lang="vbnet" title="The following example shows how to use the IsReadOnly property."/>
            </example>
        </member>
        <member name="P:NGenerics.DataStructures.Queues.CircularQueue`1.Capacity">
            <summary>
            Gets or sets the capacity of the circular queue.
            </summary>
            <value>The capacity of the queue.</value>
            <example>
            <code source="..\..\Examples\ExampleLibraryCSharp\DataStructures\Queues\CircularQueueExamples.cs" region="Capacity" lang="cs" title="The following example shows how to use the Capacity property."/>
            <code source="..\..\Examples\ExampleLibraryVB\DataStructures\Queues\CircularQueueExamples.vb" region="Capacity" lang="vbnet" title="The following example shows how to use the Capacity property."/>
            </example>
        </member>
    </members>
</doc>
